2015-02-09 93 views
1

正如標題所示,我試圖顯示「註銷此產品的庫存時會收到通知」鏈接旁邊的「出的股票「標籤。Magento 1.9 - echo「缺貨」標籤旁邊的產品庫存警示

因此,它應該是這樣的:
Example

我經歷的所有的模板,並在template/catalog/product/view.phtml有這樣的代碼片段:
<?php echo $this->getChildHtml('alert_urls') ?>,這是由:
template/productalert/product/view.phtml(其中只包含。代碼呼應實際的鏈接)我想什麼在這個模板做的是類似於下面的東西,在那裏我有INSERT STOCK ALERT LINK HERE

<?php $_product = $this->getProduct() ?> 

<?php if ($this->displayProductStockStatus()): ?> 
    <?php if ($_product->isAvailable()): ?> 
     <p class="availability in-stock"> 
      <span><?php echo $this->__('In stock') ?></span> 
     </p> 
    <?php else: ?> 
     <p class="availability out-of-stock"> 
      <span><?php echo $this->__('Out of stock') ?></span> 
      <!-- ******* INSERT STOCK ALERT LINK HERE ******* --> 
     </p> 
    <?php endif; ?> 
<?php endif; ?> 
<?php echo $this->getChildHtml('product_type_data_extra') ?> 
<?php echo $this->getPriceHtml($_product) ?> 

我有殘疾鐠冰警報,因爲這是不需要的。所以唯一的警報就是註冊股票通知。

我試過很多東西,但我想也許它是$this變量的範圍,它阻止我訪問它。您的建議或建議是最受歡迎的!

回答

1

好了,我只是碰到這種頁面傳來:http://forum.azmagento.com/how-to/product-alert-notify-html-in-product-list-view-55751.html,這給如何編輯在覈心文件中的getSaveURL()功能指令(亞克西!)/app/code/core/Mage/ProductAlert/Helper/Data.php用下面的代碼:

public function getSaveUrl($type, $product = null) 
{ 
    if (!empty($product)) 
    { 
     $product_id = $product->getId(); 
    } 
    else 
    { 
     $product_id = $this->getProduct()->getId(); 
    } 

    return $this->_getUrl('productalert/add/' . $type, array(
     'product_id' => $product_id, 
     Mage_Core_Controller_Front_Action::PARAM_NAME_URL_ENCODED => $this->getEncodedUrl() 
    )); 
} 

和然後在phtml中輸出鏈接:<a href="<?php echo Mage::helper('productalert')->getSaveUrl('stock', $_product); ?>">&nbsp;Notify Me When Available</a>

現在這個效果很好,但我有點猶豫是否需要修改一個涉及修改Core文件的解決方案。有什麼辦法可以在不覆蓋任何核心文件的情況下使用上面的代碼片段?

相關問題