Я пытаюсь перечислить все товары в корзине и указать выбранный цвет/размер и т. Д., Которые у них есть. На главном веб-сайте Magento, похоже, делает это, как показано на рисунке ниже. Однако, когда я пытаюсь сделать это программно, я получаю пользовательские атрибуты как null.В Magento, как я могу заставить getAllVisibleItems() возвращать выбранные значения атрибутов настраиваемых продуктов, которые он возвращает в корзине?
Это мой текущий код:
$quote->getAllVisibleItems();
foreach ($allCartItems as $item) {
$productInfo = array();
$product = $item->getProduct();
$productInfo["size"] = $product->getSize();
...
}
Если я использую getAllItems()
вместо getAllVisibleItems()
, то я закончу с простыми/конфигурируемых продуктов, которые будут вызывать вопрос о том, какой идентификатор элемента приложение должно использование при обновлении продукта (а также перечисление дублирующих элементов).
Единственное решение, которое я нашел в Интернете, это загрузить продукт снова, используя $product = $model->load($model->getIdBySku($sku));
для каждого перечисленного продукта, но это похоже на то, что он будет довольно работоспособным!
Как я могу вернуть getAllVisibleItems()
выбранные атрибуты и значения атрибутов настраиваемых продуктов, которые он возвращает?
[
{
name: "Tori Tank",
price: "60.0000",
id: "418",
product_id: "418",
item_id: "2481",
sku: "wbk004",
color: null,
size: null,
quantity: 1
},
{
name: "Chelsea Tee",
price: "75.0000",
id: "410",
product_id: "410",
item_id: "2483",
sku: "mtk005",
color: null,
size: null,
quantity: 1
}
]
Как вы можете видеть, цвет/размер, возвращается нулевой.
дубликат на magento.stackexchange http://magento.stackexchange.com/questions/63074/how-can-i-have-the-getallvisibleitems-return- the-chosen-attributes-and -attri – zhartaunik