[msPromoCode2] Промо-коды второй версии


— Совместимость с msOptionsPrice2 и msBonus2,
— Программное API — можно применить/отменить скидку для юзера в сниппете или плагине,
— Применение промо-кода в бек-энде для уже созданных заказов,
— Применение промо-кода на любой странице сайта и обновление цен товаров на лету,
— Возможность сгенерировать промо-код и вывести сообщение пользователю, когда он провёл на странице N секунд,
— Возможность применять скидку только к одной единице товара,
— Вывод скидки не только в корзине, но и в любом месте сайта, где отображается цена товара,
— И множество мелочей, которые будут приятным дополнением при использовании компонента.

Внимание! Вторая версия не имеет ничего общего с первой версией компонента. Даже в части функционала они отличаются, ибо реализованы совершенно иначе.

Демку потыкать можно тут, документация уже на docs.modx.pro

Компонент можно приобрести в Modstore

Создание компонента спонсировал наш любимый магазин дополнений Modstore.pro
Павел Гвоздь
01 октября 2019, 08:51
modx.pro
420
+10
Поблагодарить автора Отправить деньги

Комментарии: 19

Александр
01 октября 2019, 11:44
+1
А что станет с первой версией? Будет ли она поддерживаться, обновляться, или эта версия пришла на замену предыдущей?
    Павел Гвоздь
    01 октября 2019, 11:50
    +1
    Первая версия останется, но ряд функционала из второй версии в ней никогда не появится, из-за иной реализации. Баги в ней будут фикситься. Она дешевле второй версии.
    Вторая версия естественно в приоритете и в ней будет появляться новый функционал.
    yani
    01 октября 2019, 14:17
    0
    Павел, подскажите, есть ли возможность сделать такую скидку
    При покупке 3 товаров из категории по цене 40 рублей, сделать общую цену 100 рублей?
    ну и при покупке 4 будет 100 + 40 = 140
    6 — 100 + 100 = 200 и т.д.
      Павел Гвоздь
      01 октября 2019, 15:38
      0
      Из коробки — нет. Только если написать какой-то плагин, который бы контролировал такое поведение.
      Василий Краковецкий
      02 октября 2019, 15:36
      0
      Скидка на всю корзину применяется к конечной цене или как в предыдущей версии — разбивается и применяется отдельно к каждому из товаров?
      Николай Савин
      07 октября 2019, 06:46
      0
      Паш, а есть возможность создать промокод ограниченный по времени? Действующий, в течение часа, к примеру.
        Павел Гвоздь
        07 октября 2019, 08:20
        +1
        Да, конечно! prnt.sc/pfsfuj
          Николай Савин
          10 октября 2019, 08:22
          +1
          Отлично купил. Вижу в консоли браузера вывод логов при рендере формы. Наверное убрать забыл.
          И еще вот такой нюанс заметил — prnt.sc/ph919f — но это наверное какие то проблемы с кодировкой у меняю
            Павел Гвоздь
            10 октября 2019, 08:36
            0
            Описание вопросами? Да, видимо у тебя, т.к. не замечал нигде такого.
            Вывод логов уберу в ближайшей версии.
            И просьба, если будут вопросы по ТП, то писать в соответствующий раздел на Modstore, пжл.
              Николай Савин
              10 октября 2019, 08:37
              +1
              Вопросов то нет, заметил нюансы — дал знать.
                Павел Гвоздь
                10 октября 2019, 08:38
                0
                Я понял. На всякий случай заранее попросил)
        Константин Ильин
        03 ноября 2019, 20:28
        +1
        Павел, подскажите пожалуйста, можно ли будет напилить такую систему:

        в личном кабинете, пользователь сам создает себе промокод который будет давать другим людям, какое то слово, например «lopata». Оно является уникальным, т.е. у второго пользователя не может быть такого же промокода.

        При оформлении заказа если вводишь промокод «lopata», клиент получает 5% скидку на заказ, а тот человек которому принадлежит данный промокод «lopata» получает бонусы 10% от суммы заказа клиента.

        И так каждый раз при оформлении заказа, когда вводят lopata скида 5% и соответственно 10% человеку.
        Что-то вроде реферальной системы, но с промокодом.

        Мне нужно купить оба компонента msPromoCode2 и msBonus?
          Павел Гвоздь
          03 ноября 2019, 21:00
          0
          В целом можно, но придётся допилить. Исходники ни одного из компонентов по идее править не придётся, т.к. есть соответствующие события плагинов.
            Константин Ильин
            04 ноября 2019, 01:07
            +2
            Почти сделал сам :)

            Просто расширил профиль пользователя, в это поле записываю название промокода. Промокод создается из формы в личном кабинете пользователя. Т.е. у каждого пользователя свой промокод. В случае если человек захочет поменять промокод, берется старый и обновляется название.

            Осталось только сделать начисления бонусов за оплаченый заказ, это наверно на смену статуса повесить.

            Спасибо за отличные компоненты, жду ответа в ТП =)
              Николай Савин
              04 ноября 2019, 07:19
              +2
              Тогда уж надо id промокода записывать, а не содержимое, скорее всего
                Константин Ильин
                04 ноября 2019, 16:57
                +1
                Местами удобнее текстовый вариант)
                можно выводить в феноме без запросов на получение названия промокода.
                {$_modx->user.promocode}
                еще например не надо будет искать название старого купона, оно уже у пользователя, зару запрос на получение объекта с кодом.
                Павел сделал так, что название купона уникально, а так же индекс сделал в mysql, так что поиск по varchar не так страшен будет. Но естественно я в своем коде тоже проверяю на уникальность и там всякие нехорошие символы)

                А так ваша идея имеет смысл, обычно так и делаю, но тут как то решился так :)
                  Николай Савин
                  04 ноября 2019, 17:42
                  +1
                  Ответ исчерпывающий — Умываю руки.
                    Константин Ильин
                    04 ноября 2019, 18:01
                    0
                    Дошел до бонусов и сразу аукнулось. Вы были правы, что лучше id. Я не учел ситуацию если до оплаты заказа пользователь поменяет свой промокод, будет поиск пользователя по названию, а такого пользователя с промокодом уже нет.
          Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
          19