Как атрибут может быть присвоен определенному набору атрибутов программным путем через Magento API?

под заголовком. Я не нашел никаких связанных решений/вопросов. Мне просто интересно, как я могу назначить новый атрибут для продукта определенного атрибута, установленного через API.

Ответ 1

Что-то вроде этого:

$attribute_set_name = 'your attribute set name here';
$group_name = 'your attribute group here';
$attribute_code = 'your attribute code here';

$setup = new Mage_Eav_Model_Entity_Setup('core_setup');

            //-------------- add attribute to set and group
            $attribute_set_id=$setup->getAttributeSetId('catalog_product', $attribute_set_name);
            $attribute_group_id=$setup->getAttributeGroupId('catalog_product', $attribute_set_id, $group_name);
            $attribute_id=$setup->getAttributeId('catalog_product', $attribute_code);

            $setup->addAttributeToSet($entityTypeId='catalog_product',$attribute_set_id, $attribute_group_id, $attribute_id);

Ответ 2

Я не уверен точно, как вы это сделаете, но я бы предположил, что использование Mage_Eav_Model_Mysql4_Entity_Attribute_Collection и Mage_Eav_Model_Entity_Attribute_Group приведет вас в правильном направлении...