Изменение набора атрибутов для простого продукта

8

В основном предмет.

У меня есть простой продукт, созданный с определенным набором атрибутов. Есть ли способ изменить набор атрибутов, связанных с этим продуктом, без необходимости создания нового?

Карлсон
источник

Ответы:

9

Ссылка на набор атрибутов - это столбец в catalog_product_entityтаблице. Изменение этого должно изменить набор атрибутов.
Так что если вы хотите сделать это с помощью кода:

$product->setAttributeSetId(12)->save();

Если вы хотите сделать это из интерфейса администратора, вы можете попробовать это расширение . Даже если он говорит, что он совместим с CE 1.6.1, я успешно использовал его на EE 1.12 (что эквивалентно CE 1.7).

Мариус
источник
2
Позвольте мне добавить, что не стоит менять набор атрибутов, если вы не знаете, что делаете. В базе данных остались данные, которые могут вызвать проблемы.
Фабиан Блехшмидт
1
@FabianBlechschmidt: Вы правы. Не стесняйтесь редактировать ответ.
Мариус
2
+1 для расширения флагбита, был бы самый безопасный вариант ...
Мульт Ван Дурен
2
@Fabien: вы должны уточнить часть «если вы не знаете, что делаете». Насколько я могу судить по просмотру БД, идентификатор набора атрибутов связан только с таблицей наборов атрибутов EAV. После выполнения того, что предложил Мариус, единственные проблемы, которые я предвидел, - это потерянные значения в таблицах EAV каталога, как объяснено здесь, под «техническим фоном»: magentocommerce.com/magento-connect/… . Лично мне было бы неудобно оставлять эти лишние строки в таблицах, так что это может быть «проблемой». :)
musicliftsme
1
Flagbit экстинон просто устанавливает новый набор атрибутов для продукта и сохраняет его. Это не делает ничего особенного.
всушков