我希望有一个人可以帮助我...
目标是将产品分开放入购物车.因此,如果购物车中有2个具有相同ID的产品,则应该单独显示和处理它们,而不是作为具有数量2的一个产品/项目.
为此,我使用报价项目选项和事件.
事件:checkout_cart_product_add_after代码:
$quoteItem->addOption(new Varien_Object(
array(
'product' => $quoteItem->getProduct(),
'code' => 'unique_id',
'value' => $uniqueId
)
));
Run Code Online (Sandbox Code Playgroud)
我也尝试使用addional_options:
$additionalOptions = array(
array(
'code' => 'unique_id',
'label' => 'Uniaue ID',
'value' => $uniqueId
)
);
$quoteItem->addOption(
array(
'code' => 'additional_options',
'value' => serialize($additionalOptions),
)
);
Run Code Online (Sandbox Code Playgroud)
在那之后 - 一切正常.选项显示在购物车中,它们存储在数据库中(sales_flat_quote_item_option),它们都有自己的item-id.
但是,如果我编辑一个产品并将其再次放入购物车 - 附加选项会丢失,它们将不再存在于数据库中...这会影响购物车中具有相同ID的所有产品...
如果有人可以帮助我,那将会很好......