minishop2 редирект на страницу благодарности после успешной отправки заказа

Приветствую! Задача была выводить корзину и оформление заказа в одном модальном окне, с этим помогла разобраться вот эта заметка https://modx.pro/development/3139 , а потом соответственно показывать или страницу или окно благодарности. В интернете нашел вот такой вариант https://modx.pro/solutions/12391 — через расширение стандартного класса, но у меня он не сработал, не знаю почему, ну и через callback пробовал как написано вот тут https://docs.modx.pro/komponentyi/minishop2/razrabotka/skriptyi-i-stili, тоже не прокатило. И вот тут пришла в голову очень простая мысль, вряд ли это грамотное решение, но очень простое.

Итак, чтобы не заморачиваться с расширением классов или написанием колбэков, нужно вызывать сниппет msGetOrder с кастомным шаблоном, а в шаблоне написать свой скрипт и всё! Вот как-то так
//Вызов сниппета на странице где нужно показать окно благодарности, код самого окна должен быть там же
[[!msGetOrder?tpl=`custom.msGetOrder`]]

//Чанк custom.msGetOrder

<script>
    //Открываем окно с благодарностями 
    $("#modal-thanks").modal('show');
    //Возвращаемся на предыдущую страницу при закрытии окна
    $('#modal-thanks').on('hidden.bs.modal', function() {
     history.back();
    });
</script>
Артур
08 сентября 2019, 17:33
modx.pro
48
0

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

Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
0