Хорошо, так что я работаю над своим собственным сценарием, который читает определенные XML-файлы и импортирует продукты. Теперь каждый из этих продуктов может иметь набор атрибутов (например, цвет).
Итак, что я делаю, так это импортирую каждый пользовательский атрибут и генерирую определенную строку, например «Желтое, черное дерево», и это будет переключатель, который вы можете выбрать, когда будете заказывать продукт. , Теперь, когда я прихожу к продукту с таким же «парентидом», но с другим уникальным идентификатором, мне нужно сгенерировать новую строку для переключателя пользовательской опции, поэтому, если есть другой продукт с красным цветом, я бы следующие на выбор:
Red, black finish wood
Yellow, black finish wood
Это отлично работает для первого продукта с тем же родительским идентификатором, другими словами, если я создаю совершенно новый продукт, а не просто добавляю пользовательские опции к тому же продукту.
У меня вопрос: как создать новое значение настраиваемой опции для конкретной опции? Другими словами, как мне добавить новую строку к определенной опции, которая уже создана?
Вот в основном то, что я делаю, чтобы создать первый вариант для нового продукта.
$options = array();
$options[$ParentID] = array(
'title' => 'Option Title',
'type' => 'radio',
'is_require' => 1,
'values' => array()
);
$options[$ParentID]['values'][] = array(
'title' => 'Option Value Title',
'price' => 0.00,
'price_type' => 'fixed',
'sku' => $UniqueID,
);
foreach($options as $ParentID => $option) {
$id = Mage::getModel('catalog/product')->getIdBySku($ParentID);
$product = Mage::getModel('catalog/product')->load($id);
if(!$product->getOptionsReadonly()) {
$product->setProductOptions(array($option));
$product->setCanSaveCustomOptions(true);
$product->save();
}
}
это прекрасно работает, потому что magento генерирует sku, когда заказывает определенный продукт в формате $ ParentID_ $ UniqueID, и затем я могу отправить $ UniqueID продавцу для заказа.
Итак, снова я открыт для предложений о том, как добавить значение параметра в уже созданный пользовательский параметр