Как программно установить атрибут множественного выбора продукта по меткам


16

Если у вас есть атрибут множественного выбора и вы хотите установить выбор для продукта.

$selectedOptions = "red,green,blue";
$product->..... // # what to do?

Как я могу это сделать?

Ответы:


24

Атрибуты множественного выбора могут быть установлены в виде списка через запятую (или также массива), содержащего идентификаторы значений атрибута.

Итак, сначала мы должны преобразовать фактические значения во внутренние идентификаторы Magento.

$attrCode = 'color_base';
$sourceModel = Mage::getModel('catalog/product')->getResource()
    ->getAttribute($attrCode)->getSource();
$valuesText = explode(',', 'red,green,blue');
$valuesIds = array_map(array($sourceModel, 'getOptionId'), $valuesText);
$product->setData($attrCode, $valuesIds);
$product->save();

это не работает, страница продолжает загружаться с этим кодом
Mp de la Vega

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.