我需要在将产品添加到购物车时向购物车项目动态添加选项。提供给购物者的选择可以在产品之间变化,因此它们必须是动态的。但是,选项将始终相同。例如,“选项1”对于一个产品可能具有值“a,b,c”,对于另一个产品可能具有“x,y,z”。我不需要保存到产品中的选项,只需要购物车。选择需要显示在购物车中以及订单管理,收据等中
我从this answer了解到我可以使用$cart->addProduct($product, $params)
来设置购物车项目的自定义选项。
我发现我可以在this blog post覆盖推车控制器。我能够将产品动态添加到购物车。但是,我仍然坚持如何向产品添加动态属性值。我在调用$params
之前尝试在$cart->addProduct($product, $params)
中设置'options'和'super_attribute',但它没有将值保存到购物车项目。
最后,一些选项需要影响产品价格。我不知道如何解释这一点。
提前感谢您的帮助!
答案 0 :(得分:1)
过去我使用文本字段和下拉选项(对于影响价格的选项)以及自定义javascript和隐藏字段的组合来解决此问题。请看下面的示例,当您更改不同的机柜宽度时,将更新总尺寸和价格。此信息也将添加到购物车/管理员订单
假设您使用的是简单产品。
要添加additional_options ,请参阅Magento - Quote/order product item attribute based on user input
要更改产品价格,请参阅Changing the price in quote while adding product to cart: magento