请假设:
行产品价格= 1.5美元;
数量= 3;
而不是总金额4.5美元,它应该是基于成品标准的不同金额。
使用可配置的产品选项/属性,我的产品页面可以根据特殊的公式(用JS编写)正确显示其成品价格。
虽然我可以在产品页面上使用JS功能(公式)正确计算,但我无法在购物车页面上显示其计算金额。如何将计算出的金额传递到购物车页面,以便计算结果在结帐时的其余步骤中保持不变?
答案 0 :(得分:2)
根据与JS功能相同的逻辑(选项和数量),将产品添加到购物车时需要观察者。
你必须建立一个捕获add-to-cart事件sales_quote_add_item
并将你的逻辑放在那里的观察者。您可以使用
$observer->getEvent()->getQuoteItem()->setOriginalCustomPrice([your price])
此价格将保存到报价对象中,并在结帐时保留其他步骤。
如果您想将行总数与每个项目的价格分开,则必须覆盖calcRowTotal()
类中的Mage_Sales_Model_Quote_Item
方法,如下所述: