2013-07-11 35 views
2

显示特价商品在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> 

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

请帮我出这个

+0

小心比较日期像这个! 这个假设永远不会发生: '$ today <= strtotime($ specialPriceToDate)' 因为time()获取完整的时间,getSpecialToDate()不会。 你只得到像这样从时间日期: '$今天=日期(“Y-M-d”);' 并由此将其转换为unixtime –

回答

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" /> 

[编辑]
有点题外话,但g要知道:不要使用Mage::getModel('catalog/product')->load($_product->getId())您需要的每种产品属性。它比您想象的要慢得多。刚刚在后台编辑您需要的属性(特惠价,从特殊的价格和特殊价格)设置的现场Used in product listingYes,重新索引一切,你应该能够直接使用:

$specialprice = $_product->getSpecialPrice(); 
$specialPriceFromDate = $_product->getSpecialFromDate(); 
$specialPriceToDate = $_product->getSpecialToDate(); 
+0

OK我已经把那如你所说。但只显示在主页产品中..不在类似页面的内页中。查看此URL http://reboot.co.in/shop – swamy

+0

首先确保您在主页上使用相同的产品模板和类别中的那些。如果你这样做,那么很可能你的一个if语句返回false。 – Marius

+0

是的,我为所有页面使用相同的模板。 – swamy

相关问题