Добавить новый атрибут в существующий настраиваемый продукт magento - PullRequest
6 голосов
/ 14 апреля 2011

У меня есть около 500 настраиваемых продуктов, к которым мне нужно добавить новый атрибут.

Например, они уже имеют цвет в качестве атрибута.Как мне добавить размер к существующим конфигурируемым продуктам?

Ответы [ 5 ]

18 голосов
/ 14 ноября 2012

Добавление атрибута в набор атрибутов и последующее обновление всех атрибутов простых продуктов недостаточно.Magento спрашивает, какие «настраиваемые атрибуты» использовать при первоначальном создании настраиваемого продукта;поэтому новый атрибут не будет применяться к существующим конфигурируемым продуктам и их дочерним продуктам.Я протестировал приведенный ниже способ обхода БД на CE 1.6.2 и, похоже, он работает:

  1. Создать атрибут
  2. Перетащите его в соответствующий набор атрибутов
  3. Перейдите к phpmyadmin, таблица 'catalog_eav_attribute' и посмотрите на последний, отметьте «идентификатор атрибута», также обратите внимание на идентификатор продукта -> перейдите на catalog_product_entity и найдите требуемый конфигурируемый продукт, и отметьте entity_id-> это product_id
  4. Перейдите на catalog_product_super_attribute и вставьте новую запись с product_id и attribute_id, обратите внимание на product_super_attribute_id
  5. Перейдите на catalog_product_super_attribute_label и вставьте новую запись сproduct_super_attribute_id и значение вашего нового атрибута, например «Цвет» или «Размер», которое вы использовали при добавлении атрибута в админ.
  6. Вернитесь к администратору и выберите настраиваемый продукт, вы не заметите ни одного изВаши дочерние продукты связаны с вашим настраиваемым продуктом.
  7. Щелкните по одному из дочерних продуктов и выберите соответствующее значение атрибута, вы также можете изменить sku.
  8. Экспортируйте все дочерние продукты и добавьте в них новый атрибут и значения sku, импортируйте его обратно, и все готово, или вам, возможно, придется вручную изменить все в админке, не используя поток данных.

кредит: http://www.magentocommerce.com/boards/viewthread/43288/#t330918

1 голос
/ 30 июня 2013

Попробуйте добавить атрибут при редактировании продукта, а не в разделе «Управление атрибутами».

Для меня это автоматически добавляет себя в этот набор атрибутов продуктов, а также ко всем другим продуктам в этом наборе атрибутов.

На самом деле у меня нет проблем с использованием раздела «Управление атрибутами» для добавления новых атрибутов.

1 голос
/ 14 апреля 2011

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

После создания атрибута и добавления его в набор атрибутов вам, вероятно, потребуется взломать его на уровне базы данных, чтобы сделать атрибут настраиваемым. Это означает, что ваши простые дочерние продукты также нуждаются в модификации, чтобы иметь атрибут размера.

Удачи. Обязательно вернитесь и расскажите нам, что вы сделали, чтобы это сработало.

Спасибо, Джо

1 голос
/ 14 апреля 2011

Вы определяете этот атрибут в используемом наборе атрибутов, а затем обновляете все продукты потоком данных

0 голосов
/ 23 октября 2015

Существует грязный взлом, чтобы открыть настраиваемый продукт, затем выбрать дубликат, выбрать старый и новый атрибут, дубликат создается без SKU, а затем удалить оригинальный настраиваемый продукт и простые продукты.После этого вы можете дать тот же SKU для дублирования.Тогда вам просто нужно сделать новые простые продукты.

Это быстрый обходной путь, если не так много простых продуктов.

...