在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>
此图标仅显示在主页中,而不显示在所有产品页面列表中。我如何在所有页面中显示?
请帮我解决这个问题
答案 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();