Можно ли определить артикул только как уникальный на уровне веб-сайта (не глобально)


В магазине просмотры магазина /товары веб-сайта хранятся отдельно.

Чтобы избежать дублирования артикулов, мы должны подходить:

  • Добавьте префикс во время импорта (но нам может потребоваться удалить его при отображении)
  • Определите артикул, чтобы он был уникальным только на уровне веб-сайта.

Возможен ли вообще этот второй подход?

Author: Alex, 2013-08-27

2 answers

Чтобы сделать это возможным в Magento, вам потребуется изменить структуру базы данных, например, поле sku в плоской таблице продуктов имеет значение UNIQUE, а также несколько файлов для администратора и любой другой код, который фильтрует продукты по sku.

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

От моего опыт, внесение таких больших изменений в ядро Magento неизбежно приводит к конфликтам. Либо в ядре Magento, либо в сторонних расширениях.

 4
Author: Sander Mangel, 2013-08-27 10:31:10

Другой возможностью может быть использование дополнительного атрибута для отображаемого артикула. Добавьте префикс/суффикс к исходному артикулу, чтобы сохранить уникальный артикул, и заполните новое поле артикула коротким артикулом. Вам просто нужно изменить шаблон, чтобы отобразить значение нового атрибута (или добавить внешний интерфейс after_load-наблюдателя для заполнения содержимого поля "артикул" значением из нового атрибута - это нужно будет проверить).

 1
Author: Andreas von Studnitz, 2013-08-27 10:47:31