Информация о файле
Покупатель собрал корзину, перешёл к оформлению, но увидел уведомление «Нет в наличии» или «Доступно только 2 шт. из 10».В базовом OpenCart это тупик — клиент уходит к конкурентам.
Мой модуль бесшовно решает эту проблему, подключается поверх дополнения Simple - упрощенная регистрация и заказ (от deeman), предлагая купить похожий товар в один клик, не покидая страницу оформления заказа.
Демо сайт: https://oc23.ok-limonad.ru/
(для демонстрации добавьте товар в корзину, перейдите в оформление заказа и вбейте количество больше 500)
Демо админки: https://oc23.ok-limonad.ru/admin/index.php?route=extension/module/simple_substitutes
Логин:пароль demo:demo
Ключевые возможности:
- Функция Smart Swap (Умная замена): При клике на кнопку «В корзину» у предложенного аналога, модуль автоматически пересчитывает корзину: оставляет доступный остаток оригинала (или удаляет товар не в наличии) и добавляет выбранную замену.
- Умный алгоритм подбора (Без рутины): Модуль сам ищет аналоги на основе морфологии названия (отсекая мусорные слова), категории, бренда, совпадения атрибутов и дельты цены.
- Ручные связи: Для специфических товаров можно жестко задать конкретные аналоги через админ-панель — они всегда будут выводиться первыми.
- Встроенная защита корзины: Если покупатель выбирает аналог, у которого есть обязательные опции (размер, цвет), модуль не добавит его «вслепую» (что привело бы к ошибке БД), а аккуратно перенаправит клиента на карточку товара для выбора опций.
- Социальное доказательство (Геймификация): Опциональный вывод бейджа «Выбрали X человек». Повышает конверсию и доверие к аналогу. Алгоритм использует псевдослучайные числа на основе ID товара и количества реальных просмотров (viewed) — цифры выглядят реалистично и не скачут при обновлении страницы.
-
Собственная статистика: В админке доступна панель статистики, которая показывает реальную конверсию модуля: сколько аналоги добавляли и на какую сумму модуль «спас» заказов.
Техническая часть (HighLoad Friendly):
- Никаких N+1 запросов: Поиск и скоринг аналогов происходит на уровне базы данных (SQL math).
- Кэширование: Результаты тяжелых математических вычислений релевантности кэшируются. База не "ложится" даже при большом онлайне. Цена и остатки при этом всегда актуальны и запрашиваются в реальном времени.
- PHP 8.x Ready: Код написан с учетом строгой типизации современных версий PHP (отсутствуют фатальные ошибки при работе со строками и массивами).
- Безопасность: AJAX-обработчики защищены от прямого доступа и спам-ботов (проверка REQUEST_METHOD и наличия активной сессии корзины).
-
Не использует IonCube. Открытый исходный код, стандартный OCMOD.
Системные требования:
- OpenCart / ocStore 2.3.x
- OpenCart / ocStore 3.0.x
- PHP 5.6 - 8.x
- Установленный модуль Simple - упрощенная регистрация и заказ (от deeman)

