0

如果没有特价,我想以特价或正常价格获得定制标签。我只能以特价获得自定义标签,但对于价格我不能,我不知道从哪里开始,也许还有其他如果。如果只有价格得到价格,如果特价得到特价,我需要帮助来构建选择。

<?php 
        // Get the Special Price
        $specialprice = Mage::getModel('catalog/product')->load($_product->getId())->getSpecialPrice() >= 500;
        // Get price
        $price = Mage::getModel('catalog/product')->load($_product->getId())->getPrice()>= 500;
        // 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="picture/shipping.png" align="right" width="120" height="30" class="onsaleicon" />
    <?php  
            endif;
        endif;
    ?>

添加解决方案:

 <?php
    $specialprice = Mage::getModel('catalog/product')->load($_product->getId())->getFinalPrice();

    if ($specialprice >= 500):
    ?>

    <img src="picture/shipping.png" align="right" width="120" height="30" class="onsaleicon" />

    <?php
    endif;
    ?
4

1 回答 1

1

您正在将字符串(`$specialPriceFromDate 是一个字符串)与 int 进行比较(time() 返回一个 int ...

此外,特价的 from_date 和 to_date 是可选的(您可以同时拥有,也可以不拥有或只拥有其中之一)。

我的建议是:

  • Magento 提供$product->getFinalPrice()获取最终价格的功能
  • 比较 special_price 是否存在以及是否与 special_price 相等
  • 如果这两个相同(最终价格和特价)显示特价图片
于 2012-10-25T12:15:34.823 回答