使用magento基本产品价格添加额外的产品价格

时间:2012-04-13 23:01:55

标签: magento product

我想用产品(简单)价格增加额外的价格,我试图在自定义属性的帮助下做到这一点。我添加了自定义属性“保证金价格”,我想将此自定义属性值(保证金价格)与模板文件中产品的基本价格相加。

我通过cron工作每5分钟后更新所有产品价格,这就是为什么我认为我必须通过这种方式增加基准产品价格的保证金价格。

我在产品列表页面和产品视图页面中成功添加了它,但是如何在购物车和单页结帐中添加此基本价格的保证金价格有问题?

以下是产品列表页面上的代码,相同的产品详细信息页面在magento 1.6.x中也适用于我。

$regularPrice = number_format($_product->getFinalPrice(), 2); 
 //echo $regularPrice =  $this->getPriceHtml($_product, true 
$priceWithoutComma = str_replace(",", "",$regularPrice);
settype($priceWithoutComma, "float");
$marPrice = $_product->getMarginPrice();
settype($marPrice, "integer");
$finalPrice = $priceWithoutComma + $marPrice;
echo $finalPrice.Mage::app()->getLocale()->currency(Mage::app()->getStore()->
getCurrentCurrencyCode())->getSymbol();

$regularPrice = number_format($_product->getFinalPrice(), 2); //echo $regularPrice = $this->getPriceHtml($_product, true $priceWithoutComma = str_replace(",", "",$regularPrice); settype($priceWithoutComma, "float"); $marPrice = $_product->getMarginPrice(); settype($marPrice, "integer"); $finalPrice = $priceWithoutComma + $marPrice; echo $finalPrice.Mage::app()->getLocale()->currency(Mage::app()->getStore()-> getCurrentCurrencyCode())->getSymbol();

我这样做是正确的还是我必须改变整个过程?

1 个答案:

答案 0 :(得分:0)

看起来您可能需要考虑不同的方法。原因是从模板文件中回显价格并不会以任何方式修改项目的价格。它只是输出一个计算。

您需要了解一下有关此事件的事件监听器。

Here's a blog post of mine on how to do this.