
ms3PromoCode
Промо-коды для MiniShop3 с гибкими правилами, генерацией по маске и интеграцией в позиции заказа
- MODX 3
- PHP 8.2
- miniShop3


Единственная обязательная интеграция — MiniShop3.
| Компонент | Описание |
|---|---|
| MiniShop3 | Корзина и заказы — основа компонента |
ms3PromoCode записывает скидку в msOrderProduct.price (и производный cost) напрямую. Это может конфликтовать с другими компонентами, которые тоже модифицируют цены позиций: плагинами скидок и бонусными системами.
msOnGetCartCost, работает с промо-кодом без конфликта: наша скидка — на позициях, бонус — на итоге.properties.discount_price (стандартный механизм MS3 для old_price - price) не конфликтуют. ms3PromoCode хранит данные отдельно: properties.ms3promocode в позиции, properties.promo_code в заказе.Внимание
Если используете сторонний компонент скидок и видите некорректный итог при применении промо-кода — проверьте, не модифицирует ли он msOrderProduct.price. Конкретные случаи — в issue tracker.
CodeGenerator и отправляйте в собственных кампаниях.msOnCreateOrder читайте properties.promo_code и передавайте код в карточку сделки.См. События плагина и Сервисы.