B2C网站最常用的促销手段之一就是打折,管理员希望客户能够在前台比较直观的看到打折幅度。在一般电商程序中比较好实现,而到了Magento这里就显得有限麻烦了。Magento的产品价格输出需要考虑到很多因素,例如原始价格、优惠价格、不同客户组的不同价格、不同数量商品的不同价格以及税率计算和catalog促销规则。
如果简单以原始价格减去优惠价格,得出的结果就会有误差。还好Magento提供了一个直接可以获取最终价格的方法,该方法能够考虑到所有因素,包括不同客户组及促销规则等。代码如下。
function
saving(
$product
)
{
if
(
$product
->getFinalPrice() !=
$product
->getPrice())
{
$saving
=
$product
->getPrice() -
$product
->getFinalPrice();
$saving
= number_format(
$saving
/
$product
->getPrice() * 100);
return
$this
->__(
'Save '
).
$saving
.
'%'
;
}
}
Magento获取购物车数量和价格以及购物车所有信息
时间:13-01-21 栏目:Magento 作者:admin 评论:0 点击: 2,896 次
本文标签: magento , magento购物车
$items = Mage::getSingleton('checkout/session')->getQuote()->getAllItems(); //获取所有的信息集合
foreach($items as $item) {
echo 'ID: '.$item->getProductId().'';
echo 'Name: '.$item->getName().'';
echo 'Sku: '.$item->getSku().'';
echo 'Quantity: '.$item->getQty().'';
echo 'Price: '.$item->getPrice().'';
echo "";
}
//获取产品的数量
$totalItems = Mage::getModel('checkout/cart')->getQuote()->getItemsCount();
$totalQuantity = Mage::getModel('checkout/cart')->getQuote()->getItemsQty();
//获取产品的价格
$subTotal = Mage::getModel('checkout/cart')->getQuote()->getSubtotal();
$grandTotal = Mage::getModel('checkout/cart')->getQuote()->getGrandTotal();