Отзывы пользователей
Модуль Linked Products as Options объединяет отдельные карточки вариантов товара в логические группы и показывает переходы между ними в виде привычных опций. Покупатель может выбрать цвет, размер, объём памяти, материал или другую характеристику, но каждый вариант остаётся отдельным товаром с собственным URL-адресом, ценой, акцией, остатком, моделью, изображением и SEO-данными.
Такой подход подходит магазинам, в которых разные цвета, размеры или комплектации уже созданы как отдельные товары. Модуль не заменяет и не изменяет стандартные опции OpenCart: он добавляет отдельный механизм связывания полноценных карточек товаров.
Предусмотрена интеграция со стандартным шаблоном OpenCart, а также отдельные адаптации для OCTemplates Promo, OCTemplates Deals, Chameleon.
Как работает модуль
Администратор выбирает одно из стандартных полей OpenCart в качестве метки товарной группы: UPC, EAN, JAN, ISBN или MPN. Товары с одинаковым непустым значением выбранного поля автоматически попадают в одну группу.
После этого в модуле создаются типы опций, например «Цвет», «Размер», «Объём памяти», «Материал» или любой другой необходимый магазину вариант. Для каждого типа можно выбрать одну или несколько характеристик товара. Если характеристик несколько, модуль проверяет их в заданном порядке и использует первое непустое значение.
После синхронизации на странице товара появляются доступные варианты группы. Нажатие на значение открывает соответствующую карточку товара, поэтому для каждого варианта сохраняются его собственные данные, адрес страницы и стандартное поведение товара OpenCart.
Возможности модуля
- Автоматически группировать товары по полю UPC, EAN, JAN, ISBN или MPN
- Работать только с точным совпадением непустой метки группы
- Создавать необходимое количество типов опций
- Получать значения опций из характеристик товаров
- Использовать несколько характеристик для одного типа опции с учётом приоритета
- Показывать значения как текстовые кнопки, HEX-цвета или изображения товаров
- Настраивать несколько цветов для одного значения
- Настраивать порядок сортировки значений
- Создавать полностью ручные группы товаров
- Включать или исключать товары из автоматической группы
- Задавать ручное значение опции для конкретного товара
- Управлять отображением товаров, которых нет в наличии
- Индексировать большие каталоги пакетами через CRON
- Автоматически добавлять изменённые товары в очередь индексации через Events OpenCart
- Формировать структурированные данные Schema.org для товарных вариантов
Метка товарной группы
Для автоматического связывания используется одно из стандартных полей карточки товара. Поле выбирается в настройках модуля и должно содержать одинаковое значение у всех вариантов одной модели.
- UPC — универсальный код товара
- EAN — европейский товарный код
- JAN — японский товарный код
- ISBN — международный номер книжного издания
- MPN — код модели или группы, заданный производителем либо администратором
Например, шесть отдельных карточек Samsung Galaxy могут иметь разные модели, цвета, объёмы памяти, цены и остатки, но одинаковый MPN группы. После индексации модуль свяжет их и покажет цвет и память как переходы между вариантами.
Типы опций и характеристики
Названия типов опций заранее не ограничены. Магазин самостоятельно создаёт нужные варианты в соответствии со своим ассортиментом: цвет, размер, память, материал, фасон, длина, комплектация или другая характеристика.
К одному типу опции можно привязать несколько характеристик. Это полезно, если в разных категориях одинаковое содержание хранится под разными названиями, например «Цвет», «Цвет корпуса» или «Основной цвет». Порядок характеристик определяет приоритет их проверки.
- Текст — значения показываются компактными кнопками
- Цвет — значения показываются в виде HEX-палитры
- Изображение — используется основное изображение соответствующего товара
Модуль не создаёт отдельные изображения значений. Для режима «Изображение» используется уже существующее основное изображение товара и настроенный в модуле размер миниатюры.
HEX-палитра и сортировка значений
После индексации модуль собирает найденные значения характеристик на отдельной вкладке. Для каждого значения можно установить порядок сортировки, а для цветов — один или несколько HEX-кодов.
Если значение состоит из нескольких цветов, модуль формирует многоцветный образец. Настроенные HEX-коды и сортировка сохраняются независимо от текущего типа отображения. Переключение опции с цвета на изображение и обратно не удаляет ранее настроенную палитру.
Отображение в карточке товара
- Текущее значение опции выделяется и не является активной ссылкой
- Текстовые значения показываются как кнопки
- Цвета показываются в виде однотонных или многоцветных образцов
- Для изображений используется основное фото соответствующего товара
- Название товара в режиме изображения доступно при наведении
- Товары не в наличии могут быть показаны, отключены или полностью скрыты
- Недоступные значения имеют отдельное визуальное оформление
При выборе значения покупатель переходит на отдельную страницу соответствующего товара. Модуль не подменяет цену, остаток или изображение через JavaScript, поэтому карточка всегда использует актуальные стандартные данные OpenCart.
Ручные группы
Автоматический режим можно дополнять ручным управлением. Для этого предусмотрена отдельная страница со списком всех созданных групп, фильтрацией, сортировкой и пагинацией.
- Поиск по названию группы или её метке
- Поиск группы по товару, модели или SKU
- Фильтрация автоматических, ручных и смешанных групп
- Создание новой ручной группы
- Добавление товаров через автодополнение
- Ручная сортировка товаров в группе
- Ручные значения опций отдельно для каждого языка
- Отключение отдельной группы
- Блокировка автоматической группы
Ручное значение имеет приоритет над автоматически полученной характеристикой. Это позволяет добавить в группу товар с неполными данными, не изменяя его стандартные характеристики.
Очистка групп
В модуле предусмотрены три отдельных режима очистки:
- Автоматические группы — очистка автоматического индекса и групп, созданных синхронизацией
- Ручные группы — удаление групп, созданных администратором вручную
- Все группы — полная очистка автоматических и ручных групп модуля
Индексация и CRON
Для быстрой работы на витрине модуль предварительно создаёт собственный индекс связей. Данные обрабатываются пакетами, поэтому модуль можно использовать в больших каталогах без длительного запроса при открытии страницы товара.
- Настраиваемое количество товаров в одном пакете
- Ручной запуск полной синхронизации из административной части
- Защищённый секретным ключом URL для CRON
- Готовая команда для crontab
- Отображение состояния, прогресса и статистики индексации
Во время полной синхронизации действующий индекс продолжает работать. Новое поколение данных становится активным только после успешного завершения перестроения. Покупатели не видят частично заполненные группы во время обновления каталога.
Автоматическое обновление после изменений товара
Модуль использует стандартные Events OpenCart. После добавления, редактирования или удаления товара его идентификатор попадает в очередь. Следующий запуск CRON обновляет только изменённые товары и связанные с ними группы.
Прямые SQL-запросы и некоторые сторонние импорты могут не вызывать Events OpenCart. После массового прямого импорта или изменения меток группы рекомендуется выполнить полную синхронизацию.
SEO и структурированные данные
Для каждого типа опции можно выбрать соответствующее свойство Schema.org. Если свойство не выбрано, модуль не добавляет для этой опции структурированные данные.
- ProductGroup — логическая группа товарных вариантов
- productGroupID — метка товарной группы
- hasVariant и isVariantOf — связь группы с вариантами
- variesBy — перечень свойств, по которым различаются товары
- color — цвет
- size — размер
- material — материал
- pattern — узор
- suggestedAge — рекомендуемый возраст
- suggestedGender — рекомендуемый пол
- additionalProperty — другая характеристика товара
Для стандартного шаблона модуль формирует собственный блок структурированных данных. Адаптации OCTemplates Promo, Deals, Chameleon также интегрируют связь варианта в нативную микроразметку товара соответствующей темы.
Производительность
- Отдельные таблицы индекса с индексами для основных выборок
- Пакетная загрузка характеристик товаров
- Пакетное добавление записей индекса
- Отсутствие очистки активных данных до завершения полной синхронизации
- Инкрементальное обновление изменённых товаров
- Кеширование настроек типов опций стандартным кешем OpenCart
- Отсутствие внешних API-запросов на странице товара
Мультиязычность и мультимагазин
Названия групп, названия типов опций и ручные значения можно задавать отдельно для каждого языка. При отображении модуль учитывает текущий язык и магазин OpenCart и не показывает товары, которые не привязаны к текущему магазину.
Административная часть модуля локализована на украинский, английский и русский языки.
Интеграция с шаблонами
- Default — поддержка входит в основной архив
- OCTemplates Promo — отдельный архив адаптации с собственным Twig-шаблоном и CSS
- OCTemplates Deals — отдельный архив адаптации с собственным Twig-шаблоном и CSS
- Chameleon — отдельный архив адаптации с собственным Twig-шаблоном и CSS
Для Promo, Deals, Chameleon необходимо устанавливать только адаптацию, соответствующую активному шаблону. Основной модуль устанавливается в любом случае.
Открытый код и независимость
Код модуля не закодирован и не обфусцирован. Все PHP-, Twig-, JavaScript-, CSS- и XML-файлы доступны для просмотра и редактирования.
Модуль не обращается к сторонним ресурсам, внешним API или удалённым серверам и не требует установки сторонних библиотек либо системных служб. Обработка товаров, построение групп, кеширование и формирование блока вариантов выполняются непосредственно на сайте.
Благодаря отдельному Twig-шаблону, CSS-файлу и точечному подключению через OCMOD модуль можно адаптировать к другим темам OpenCart без изменения его основной логики. Для нестандартной карточки товара обычно достаточно подготовить отдельную адаптацию с соответствующей точкой вывода и стилями активного шаблона.
Установка
- Выполните чистую установку основного архива через Extensions / Installer
- Если используется OCTemplates Promo, Deals, Chameleon загрузите соответствующий архив адаптации
- Перейдите в Extensions / Modifications и нажмите Refresh
- Перейдите в Extensions / Extensions
- Выберите тип расширений Modules / Модули
- Найдите Linked Products as Options и нажмите Install
- Откройте настройки модуля
- Выберите поле метки группы и создайте необходимые типы опций
- Выполните полную синхронизацию
- Добавьте защищённый URL в планировщик CRON
Модуль не изменяет файлы ядра OpenCart напрямую. Интеграция выполняется через стандартные Events OpenCart и OCMOD.
Важные примечания
- Для автоматического создания групп как минимум два активных товара должны иметь одинаковое непустое значение выбранного поля UPC, EAN, JAN, ISBN или MPN.
- После изменения поля метки группы, состава характеристик или массового прямого импорта необходимо выполнить полную синхронизацию.
- Регулярный CRON обрабатывает очередь изменённых товаров и продолжает незавершённую полную синхронизацию. Для небольшого каталога синхронизацию также можно запускать вручную из административной части.
- Удаление модуля с помощью кнопки Uninstall удаляет созданные им таблицы, индекс, автоматические и ручные группы, палитры и другие настройки значений. Товары, характеристики и стандартные данные OpenCart не удаляются.
DEMO
- Admin Page
- login/password: demo/demodemo
Лицензия
Лицензия распространяется на один домен и его поддомены.
Характеристики
-
Сейчас на странице 0 пользователей
- Нет пользователей, просматривающих эту страницу.