在Magento产品视图页面中,
我需要使用产品选项调用第三方API以获得产品价格,我需要动态更改产品价格 .
如何在视图页面中更新产品价格以便我可以将正确的价格传递到购物车?
我尝试在options.phtml中添加此输入标记,
<input type='text' name='price' value='999' />
然后点击“添加到购物车”按钮,但购物车页面的价格没有变化 .
请建议我,
您将无法以这种方式设置自定义价格,因为当magento将产品添加到购物车时,它不会从表单发布数据中获取价格 .
在magento中,可以选择在运行时设置产品的自定义价格 . 因此,您必须在checkout_cart_product_add_after事件中调用观察者,并在该观察中,从表单发布数据中获取自定义价格并按以下方式设置产品自定义价格:
$request=$observer->getRequestParam(); $price=$request->getPrice(); $qty=1; $item = $observer->getQuoteItem(); $item->setCustomPrice($price*$qty); $item->setOriginalCustomPrice($price); // Enable super mode on the product. $item->getProduct()->setIsSuperMode(true);
1 回答
您将无法以这种方式设置自定义价格,因为当magento将产品添加到购物车时,它不会从表单发布数据中获取价格 .
在magento中,可以选择在运行时设置产品的自定义价格 . 因此,您必须在checkout_cart_product_add_after事件中调用观察者,并在该观察中,从表单发布数据中获取自定义价格并按以下方式设置产品自定义价格: