2013-09-30 58 views
1

我試圖在magento中顯示具有保存的金額百分比的銷售圖標,到目前爲止我已成功完成此操作。但我面臨的問題是 銷售圖標顯示在所有頁面上該產品是否有特價。銷售圖標只有在特價時纔會顯示。我在list.phtml中使用下面的代碼。我不是程序員。我很感謝您的幫助,以糾正這些代碼,以便只有在特價時纔會出現銷售圖標。在此先感謝如何在magento中的分類列表頁面中顯示銷售圖標

<?php $specialprice = $_product->getSpecialPrice(); 
$regularprice = $_product->getPrice(); 
// Get the Special Price FROM date 
$specialPriceFromDate = $_product->getSpecialFromDate(); 
// Get the Special Price TO date 
$specialPriceToDate = $_product->getSpecialToDate(); 
// Get Current date 
$today = time(); if ($specialprice)if($today >= strtotime($specialPriceFromDate) && $today <= strtotime 

($specialPriceToDate) || $today >= strtotime($specialPriceFromDate) && is_null($specialPriceToDate))$discount = 100 

- round(($specialprice/$regularprice)*100); {?><span class="onsaleicon"><span class="onsaletext"> <?php echo 

$discount .'% OFF' ;?></span></span> <?php } ?></a>` 

回答

0

這是我是如何做到的。
catalog/product/list.phtml頂部補充一點:

$_taxHelper = $this->helper('tax'); 

,並使用此代碼,以確定是否一個產品有一個特殊的價格。如果特殊價格是手動設置的或者它是由目錄價格規則確定的,它將起作用。

<?php $_simplePricesTax = ($_taxHelper->displayPriceIncludingTax() || $_taxHelper->displayBothPrices());?> 
<?php $_price = $_taxHelper->getPrice($_product, $_product->getPrice()) ?> 
<?php $_regularPrice = $_taxHelper->getPrice($_product, $_product->getPrice(), $_simplePricesTax) ?> 
<?php $_finalPrice = $_taxHelper->getPrice($_product, $_product->getFinalPrice()) ?> 
<?php if ($_finalPrice < $_price): ?> 
    YOUR SALE LABEL HERE 
<?php endif;?> 
+0

感謝馬呂斯它像一個魅力:) –

+0

@NohoAdam。別客氣。如果它有效接受答案。不要留下任何鬆散的末端。 – Marius

2

試試這個

這裏

$ stodate =特惠價至今

$ sfromdate =特殊的價格從日

$date = date("Y-m-d H:i:s"); 
$special=$_product['special_price']; 
$price=$_product['price']; 
$stodate=$_product['special_to_date']; 
$sfromdate=$_product['special_from_date']; 

    if (!$special == null) { 

     if (isset($sfromdate) and $date >= $sfromdate) { 
     { 
      if(isset ($stodate)){ 
       if($date <= $stodate){ 
        ?> 
      <div class="onsaleicon"> 
       <span class="discounttext"> 
        <?php 
        echo round(100 - ($special/$price) * 100) . "%"; 
        ?>    
       </span> 

      </div>    
      <?php 

       } 

      }else{ 
       ?> 
      <div class=""onsaleicon"> 
       <span class="discounttext"> 
        <?php 
        echo round(100 - ($special/$price) * 100) . "%"; 
        ?>    
       </span> 

      </div>    
      <?php 
      } 

     } 

     } 
    } 
+0

感謝您的回答,但使用了Marius解決方案並且工作正常。 –

+0

@NohoAdam歡迎 –

相關問題