Загрузите архив в Модули → Управление модулями → Загрузить и установить, затем откройте настройки модуля. Модуль создаёт одну таблицу и не меняет файлы CS-Cart.
Настройки
- Отображение на витрине — во вкладке характеристик над глобальными или под ними, на отдельной вкладке или нигде. У товара режим можно переопределить. Вкладку модуля можно переименовать, переместить или отключить в Веб-сайт → Вкладки товара.
- Заголовок для характеристик без раздела — «Прочее» или «Основные», когда у товара есть группы глобальных характеристик.
- Показывать в сравнении товаров — строки сопоставляются по названию без учёта регистра.
- Редактор в панели администратора — на вкладке «Характеристики» товара или на отдельной вкладке.
- Отдельные характеристики для каждого языка — если выключить, сохранение на любом языке перезаписывает все языки.
- Удалять данные модуля при удалении — по умолчанию выключено, чтобы характеристики пережили переустановку и обновление.
Редактор
Строки добавляются кнопками «Добавить поле» и «Добавить раздел», порядок меняется перетаскиванием. Если вставить в поле названия строки из таблицы характеристик или строки вида Название: значение, они разберутся на отдельные поля.
Во вкладке JSON тот же список можно править текстом.
Формат JSON
Полный список задаёт и разделы, и порядок:
[
{ "type": "section", "label": "Экран" },
{ "type": "feature", "key": "Диагональ", "value": "6,5\"" },
{ "type": "feature", "key": "Частота", "value": "120 Гц" }
]
Короткий объект только обновляет значения:
{ "Диагональ": "6,7\"", "Память": "8 ГБ" }
Существующие поля остаются на своих местах и в своих разделах, новые добавляются в конец, а поля, которых нет в объекте или у которых значение null, удаляются.
Импорт и экспорт
В экспорте товаров появляются два поля:
- Individual attributes — JSON в любом из двух форматов, с учётом языка;
- Individual attributes display — режим показа на витрине:
features_above,features_below,tab,hiddenили пусто, чтобы взять настройку модуля.
Если в значениях встречаются неэкранированные дюймы ("7,6""), как бывает в фидах поставщиков, модуль попробует восстановить такой JSON.
REST API
Список приходит в данных товара в поле xtg_individual_attributes и принимается в нём же при создании и изменении товара:
PUT /api/products/42
Content-Type: application/json
{ "xtg_individual_attributes": { "Гарантия": "2 года" } }
Фиды
В настройках модуля есть готовый фрагмент для шаблона фида. Вставьте его внутрь <offer>, после вывода характеристик товара:
{foreach fn_xtg_individual_attributes_get_for_feed($product.product_id, $datafeed.lang_code, $product.features) as $attr}
<param name="{$attr.name}">{$attr.value}</param>
{/foreach}
У каждой записи есть поля name, value и section. Разделы, товары с режимом «Не отображать» и характеристики с названием как у глобальной пропускаются.