
- MODX 3
- PHP 8.2
- miniShop3


Установите пакет через Extras → Installer. Package Manager не проверит зависимости — убедитесь заранее, что они стоят (issue #4):
Phinx-миграции отработают автоматически и создадут таблицы modx_ms3_promo_codes и modx_ms3_promo_code_usages.
WELCOME10.Приветственная скидка 10%.percent. Подпись соседнего поля зависит от типа: Процент для percent, Сумма для fixed.10.all (на всю корзину).Подробнее об опциях — Управление кодами.
В шаблоне страницы корзины (например, tpl.msCart или собственный чанк) добавьте вызов сниппета:
{'!ms3PromoCodeForm' | snippet}Сниппет выведет форму с полем ввода и кнопкой «Применить». Стили подключит системная настройка ms3promocode.frontend_assets_preset.
WELCOME10 и нажмите «Применить». Цены позиций уменьшатся на 10%, итог пересчитается.Чтобы применение откатывалось при переходе заказа в «Отменён» (счётчик used_count уменьшится на 1):
ms3promocode.ms3promocode.cancel_statuses.5 («Отменён»); если на магазине добавлены свои — впишите нужные ID.При обратном переходе из этих статусов применение восстанавливается автоматически.
Чтобы менеджер не мог применить или снять код у заказа в определённых статусах:
ms3promocode.lock_statuses.4,5 (в стандартной MiniShop3: 4 — «Отправлен», 5 — «Отменён»).В этих статусах вкладка Промо-код в карточке заказа работает только на просмотр.
APPLE15, тип percent, размер 15.matching (только подпадающие позиции).Скидка распределится пропорционально по позициям этого бренда.
BIG500, тип fixed, размер 500.5000.Если корзина меньше 5000 ₽, покупатель увидит сообщение «Сумма заказа меньше требуемого минимума (5 000 ₽)».
WINTER-####-??.1000.WINTER-4729-KM.