![](/img/trans.png)
[英]Magento CE 1.9 - Out of Stock Product Options still display in Config Product Dropdown
[英]Magento 1.9 - echo Product Stock Alert next to “Out of Stock” Label
顾名思义,我试图在“缺货”标签旁边显示“注册此产品后将收到通知”链接。
所以它应该看起来像:
我正在浏览所有模板,并且在template/catalog/product/view.phtml
有以下代码片段:
<?php echo $this->getChildHtml('alert_urls') ?>
,它来自:
template/productalert/product/view.phtml
(其中仅包含用于回显实际链接的代码。)我想要在此模板中执行的操作类似于以下内容,其中我在INSERT STOCK ALERT LINK HERE
有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
变量的范围使我无法访问它。 欢迎您的建议!
好的,所以我碰到了以下页面: http : //forum.azmagento.com/how-to/product-alert-notify-html-in-product-list-view-55751.html ,其中提供了有关如何使用以下代码在核心文件( yikes! )/ /app/code/core/Mage/ProductAlert/Helper/Data.php
code/core/ getSaveURL()
编辑getSaveURL()
函数:
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()
));
}
然后输出链接: <a href="<?php echo Mage::helper('productalert')->getSaveUrl('stock', $_product); ?>"> Notify Me When Available</a>
在您的phtml中。
现在,这很好用,但是我有点犹豫要解决涉及修改Core文件的解决方案。 有什么办法可以利用上面的代码片段而不覆盖任何核心文件?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.