msDropCarts

Брошенные корзины miniShop2: сохранение состава, контакта и очистка
Автор дополнения
Артур Шевченко
Пакетов
31
Закачек
3 502
Обычно отвечает в течение суток
Автор дополнения
Пакетов
31
Закачек
3 502
Обычно отвечает в течение суток
Версия 1.0.8-pl
Дата выпуска 05.08.2026
Загрузки 0
Просмотры 98
Внимание, этот компонент несовместим с MODX 3.
Что делает
  • Запоминает состав корзины покупателя, который не дошёл до оформления, и связывает её с контактом, если тот успел его оставить.
  • Обновляет запись при каждом изменении корзины — сохраняется актуальный состав, а не первый снимок.
  • Хранит корзины ограниченное время и чистит просроченные по расписанию, чтобы база не росла бесконечно.
Зачем это магазину
  • Появляются данные, по которым можно вернуть покупателя письмом: что именно лежало в корзине и кому писать.
  • События пакета позволяют подключить свою логику дожима — от письма до задачи менеджеру.
Требования
  • MODX Revolution 2.5+, PHP 7.4+
  • miniShop2 и pdoTools
  • Для отправки писем — SendIt и FormIt

1.0.8-pl

  • Логирование переведено с файлов (services/logs/*.txt) на mxLogger. Класс Logging делегирует записи сервису mxLogger (если установлен), иначе молчит и один раз предупреждает в журнале MODX.
  • Новые гейты: msdc_debug (вкл/выкл) + msdc_log_level (минимальный уровень debug|info| warning|error, по умолчанию error; единый приёмник mxLogger, включено из коробки). Раньше debug-настройки не было — логирование шло всегда. Консистентно с mxLogger.min_level.
  • Тэги: базовые msdropcarts + cart. Уровни: пустой ID ресурса корзины и отсутствие файла пресетов — warning. Сигнатура Logging::write сохранена + добавлены $level и $tags.
  • ВНИМАНИЕ: перед сборкой настройки msdc_debug и msdc_log_level создать в менеджере (namespace msdropcarts) — сборка тянет настройки из БД стенда.

1.0.7-pl

Переписан метод очистки устаревших корзин, чтобы не зависал при большом количестве этих самых корзин.

1.0.6-pl

  • Добавил получение id магазина из контекста по умолчанию, если в текущем контексте такой настройки нет.

1.0.5-pl

  • Переписал метод удаления просроченных корзин.

1.0.4-pl

  • Поменял событие OnHandleRequest на OnWebPageInit.
  • Добавил проверок в плагин и изменил логику инициализации минишопа на событие OnWebPageInit.

1.0.3-pl

  • Добавил сниппет msdcAddContact в msDropCarts.
  • Добавил добавление продуктов в корзину, если корзина есть в сессии.

1.0.2-pl

  • Мелкие правки.

1.0.1-pl

  • Заменил id сессии на собственный токен.

1.0.0-pl

  • Добавил возможность создания пустых корзин для сбора контактов.

1.0.0-beta

  • Первая сборка.

Последние обсуждения в сообществе MODX.pro