2015-08-08 118 views
0

我试图在将购物车项添加到购物车时动态添加选项。对于这个在线和其他问题,我已经经历了几种建议的解决方案,但无济于事。Magento - 将产品添加到购物车时将其他选项添加到订单项

到目前为止,我已成立了事件的观察员,我模块​​3210在事件:

catalog_product_save_after 

和方法正确地触发。所以我添加了这段代码,试图在添加到购物车中的商品中添加一些选项:

$item = $observer->getQuoteItem(); 
$myCustomData = array('test' => 'testing'); 
$item->addOption(array('code' => 'my_custom_data', 'value' => serialize($myCustomData))); 

但是,这并没有任何效果。

我希望有人可以帮助,因为我一直在努力解决这个问题。理想情况下,这些选项也应显示在网站的前端和其他区域的购物车订单项中,例如订单发票,订单详细信息页等。

与可配置产品配合使用的解决方案将是一项巨大的好处。

+0

你有没有这个解决方案具有可配置产品的工作原理? –

回答

0

Magento提供了添加非产品属性或产品定制选项的选项的功能。它们在产品上设置并引用选项代码additional_options。

您需要采取两个步骤,每个步骤都可以通过事件观察者处理。如果您希望额外的选项进行重新排序,您还需要观察第三个事件。

在这里看到更多的细节...... Magento的 - Add options to quote item

+0

谢谢,链接中的解决方案似乎解决了我的问题。 –

0

catalog_product_save_before上设置您的事件观察者。

或者,在cart_item重新加载您的产品(Mage::getModel('catalog/product')->load($id);)并在订单项中列出您的其他选项。

相关问题