在magento特价产品上显示销售图标。仅在主页上显示的不是所有页面

时间:2013-07-11 10:19:39

标签: php magento

在magento特价商品上展示促销图标。只有在主页上才会显示所有页面。

我编辑过的代码 应用程序/设计/前端/默认/模板/目录/产品/ list.html
从行号:95

<a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>"` class="product-image"><img src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(135); ?>" width="135" height="135" alt="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" />


<?php 
    // Get the Special Price
    $specialprice = Mage::getModel('catalog/product')->load($_product->getId())->getSpecialPrice(); 
    // Get the Special Price FROM date
    $specialPriceFromDate = Mage::getModel('catalog/product')->load($_product->getId())->getSpecialFromDate();
    // Get the Special Price TO date
    $specialPriceToDate = Mage::getModel('catalog/product')->load($_product->getId())->getSpecialToDate();
    // Get Current date
    $today =  time();

    if ($specialprice):
        if($today >= strtotime( $specialPriceFromDate) && $today <= strtotime($specialPriceToDate) || $today >= strtotime( $specialPriceFromDate) && is_null($specialPriceToDate)):
?>
        <img src="../images/sale-icon.png" width="101" height="58" class="onsaleicon" />
<?php  
        endif;
    endif;
?>

</a>

此图标仅显示在主页中,而不显示在所有产品页面列表中。我如何在所有页面中显示?

请帮我解决这个问题

1 个答案:

答案 0 :(得分:3)

这是因为你插入了这样的图像:

<img src="../images/sale-icon.png" width="101" height="58" class="onsaleicon" />

图片应放在skin/frontend/{interface}/{theme}/images/中,您应该这样参考:

<img src="<?php echo $this->getSkinUrl('images/sale-icon.png');?>" width="101" height="58" class="onsaleicon" />

<强> [编辑]
有点偏离主题,但很高兴知道:不要对所需的每个产品属性使用Mage::getModel('catalog/product')->load($_product->getId())。它比你想象的更慢。只需在后端编辑您需要的属性(特价,特价和特价),将字段Used in product listing设置为Yes,重新索引所有内容,您应该可以直接使用:

$specialprice = $_product->getSpecialPrice();
$specialPriceFromDate = $_product->getSpecialFromDate();
$specialPriceToDate = $_product->getSpecialToDate();
相关问题