Я динамически добавляю товары в корзину в Magento2 с некоторыми пользовательскими настройками.Каждый продукт имеет один и тот же базовый идентификатор продукта с различными параметрами.Represent Product
был корректно переопределен, поэтому все товары, добавленные в корзину, являются отдельными.Однако с этим кодом второй добавленный продукт потеряет свои пользовательские параметры:
$magento_product = $this->productRepository->get('simple-product-1');
$params = array(
'product' => $magento_product->getId(),
'qty' => intval(5),
'options' => array(
'cr_price' => 12.0,
'Product' => "Test P",
'cr_XML' => '<root></root>'
),
);
$this->cart->addProduct($magento_product, $params);
$params = array(
'product' => $magento_product->getId(),
'qty' => intval(10),
'options' => array(
'cr_price' => 14.0,
'Product' => "Test P2",
'cr_XML' => '<root></root>'
),
);
$this->cart->addProduct($magento_product, $params);
$this->cart->save();
Запись в таблице quote_item_option
имеется только у первого продукта.
Есть мысли о том, почему и какбыло бы желательно исправить.