2012年6月16日星期六 Asia/Shanghai上午11时39分22秒
有的时候,我们想输出产品的tier price 的最小值!如图:
下面是解决的办法:
1.
在catalog/product/view文件夹下新建一个文件: getlowest.phtml
<?php
/** * @E-Commercewebdesign.co.uk */ $_product = $this->getProduct(); $_tierPrices = $this->getTierPrices(); $_finalPriceInclTax = $this->helper('tax')->getPrice($_product, $_product->getFinalPrice(), true); $_weeeTaxAmount = Mage::helper('weee')->getAmountForDisplay($_product); if (Mage::helper('weee')->typeOfDisplay($_product, array(1,2,4))) { $_weeeTaxAttributes = Mage::helper('weee')->getProductWeeeAttributesForDisplay($_product); } ?> <?php if (count($_tierPrices) > 0): ?> <?php if ($this->getInGrouped()): ?> <?php $_tierPrices = $this->getTierPrices($_product); ?> <?php endif; ?> <?php Mage::helper('weee')->processTierPrices($_product, $_tierPrices); ?> <?php $i = 0; ?> <?php $_tierPrices = array_reverse($_tierPrices); ?> <?php foreach ($_tierPrices as $_price): ?> <?php if($i==0){ ?> <p style="font-weight:bold; font-size: 1em;">After tier pricing the lowest price you can have a Cowboy Hat is... <span style="font-size:150%; text-decoration:underline;"> <?php echo $_price['formated_price']; ?> </span> <p> <?php $i++; ?> <?php } ?> <?php endforeach ?> <?php endif;?>
2.
在catalog_product_view这个block下面加入这个block
<block type="catalog/product_view" name="getlowest" as="getlowest" template="catalog/product/view/getlowest.phtml" />
3.
在希望显示tier price最小值的地方,调用下面的代码:
<?php echo $this->getChildHtml('getlowest') ?>
然后就会显示出来,如果我们想在其他页面调用,譬如产品列表页面调用,可以按照下面的方式操作
public function getLowestPrice($_product)
{
$prices = new Mage_Bundle_Block_Catalog_Product_View();
$_tierPrices = $prices->getTierPrices($_product);
$count = $_product->getTierPriceCount();
if ($count > 0):
$i = 0;
$_tierPrices = array_reverse($_tierPrices);
foreach ($_tierPrices as $_price):
if($i==0){
return $_product->getFormatedTierPrice($_price);
$i++;
}
endforeach;
endif;
}
通过这个函数调用就可以得到!
OK,完毕!