【问题标题】:Magento - Add additional options to line item when product is added to the cartMagento - 将产品添加到购物车时向订单项添加其他选项
【发布时间】:2015-08-08 20:38:42
【问题描述】:

我正在尝试将选项添加到购物车时动态添加到购物车中。我已经在网上和其他问题上浏览了几个建议的解决方案,但无济于事。

到目前为止,我已经在我的模块config.xml 中为事件设置了一个事件观察器:

catalog_product_save_after

并且该方法正确触发。所以我添加了这段代码来尝试为要添加到购物车的商品添加一些选项:

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

但是这没有任何效果。

我希望有人能提供帮助,因为我已经筋疲力尽地试图解决这个问题。理想情况下,这些选项还应该显示在前端的购物车行项目和网站的其他区域,例如订单发票、订单详细信息页面等。

适用于可配置产品的解决方案将是一个巨大的好处。

【问题讨论】:

  • 这个解决方案是否适用于可配置产品?

标签: magento options magento-1.9


【解决方案1】:

Magento 提供了添加不是产品属性或产品自定义选项的选项的功能。它们使用选项代码附加选项设置在产品和报价项目上。

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

查看这里了解更多详情... Magento - Add options to quote item

【讨论】:

  • 谢谢,链接中的解决方案似乎已经解决了我的问题。,
【解决方案2】:

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-01-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-10
    • 1970-01-01
    相关资源
    最近更新 更多