我的网站是通过magento系统用于购物而建立的。现在我添加一个关于好国外价格的功能。例如: 如果价格是35.4美元,它将改为34.99美元; 如果价格是35.5美元,它将改为35.99美元;
代码是:round(35.4)+ 0.99;
现在这里有一个问题,我的产品有几个选项链接'type','color'。并且不同的选项显示不同的价格,就像magento中的默认可配置产品一样。 在产品页面:价格是1000美元显示999.99美元,红色+ 100美元显示+ 99.99美元 ,并输入大+50显示+ 49.99。这里的总价格是1149.97。但在购物聊天中价格是圆的(1000 + 100 +50)+0.99 = 1149.99。所以我不知道如何处理它。
有人帮助我......等待你的建议。
答案 0 :(得分:0)
因为magento最终价格是onFly计算,你将覆盖
app/code/core/Mage/CatalogRule/Helper/Data.php
并改变方法如同。 (您需要添加到adminhtml它选项或硬编码)
public function calcPriceRule($actionOperator, $ruleAmount, $price)
{
$priceRule = 0;
switch ($actionOperator) {
case 'to_fixed':
$priceRule = min($ruleAmount, $price);
break;
case 'to_percent':
$priceRule = $price * $ruleAmount / 100;
break;
case 'by_fixed':
$priceRule = max(0, $price - $ruleAmount);
break;
case 'by_percent':
$priceRule = $price * (1 - $ruleAmount / 100);
break;
case 'my_custom_prices':
//your price rules
break;
}
return $priceRule;
}