MiniShop 2 и его сниппеты с пустым шаблоном
Господа и дамы, буду очень рад если поможете.
С этой проблемой я столкнулся несколько месяцев назад, когда меня попросили несколько изменить информацию, которая приходит пользователю и менеджеру после заказа на почту. Добавить в нее и адрес и способ доставки и так далее.
Я уже писал здесь два вопроса тогда
modx.pro/help/9727/
modx.pro/help/9721/
но ответа мы так и не нашли.
Сейчас я занимаюсь новым магазином, новый хостинг, свежая версия miniShop2 но проблема совершенно идентичная. Я понимаю, что раз не работает только у меня, то и туплю только я, но буду раз если скажите в чем.
Итак — согласно документации по miniShop 2 все сниппеты могут быть вызваны с указанием пустого шаблона и тогда все информация просто распечатается на экран. У меня это не работает. Вернее выборочно. Скажем MsCart — не вопрос — показывает информацию.
Но поскольку полная информация о заказе содержится в msgetOrder то для того, чтобы расширить информацию, отсылаемую в письме, мне необходимо знать, как называются лежащие в msgetOrder плейсхолдеры. Знать как к ним обратиться в шаблоне письма. Но вызов
В виде извращения, но согласно документации пытаюсь вывести всю инфу в плейсхолдер, а затем вызвать его, но тоже пустой экран.
И да, идентификатор заказа верный, такой заказ есть, так что явно не в этом проблема.
С этой проблемой я столкнулся несколько месяцев назад, когда меня попросили несколько изменить информацию, которая приходит пользователю и менеджеру после заказа на почту. Добавить в нее и адрес и способ доставки и так далее.
Я уже писал здесь два вопроса тогда
modx.pro/help/9727/
modx.pro/help/9721/
но ответа мы так и не нашли.
Сейчас я занимаюсь новым магазином, новый хостинг, свежая версия miniShop2 но проблема совершенно идентичная. Я понимаю, что раз не работает только у меня, то и туплю только я, но буду раз если скажите в чем.
Итак — согласно документации по miniShop 2 все сниппеты могут быть вызваны с указанием пустого шаблона и тогда все информация просто распечатается на экран. У меня это не работает. Вернее выборочно. Скажем MsCart — не вопрос — показывает информацию.
Но поскольку полная информация о заказе содержится в msgetOrder то для того, чтобы расширить информацию, отсылаемую в письме, мне необходимо знать, как называются лежащие в msgetOrder плейсхолдеры. Знать как к ним обратиться в шаблоне письма. Но вызов
[[!msGetOrder?
&id=`25`
&tpl=``
]]
ровным счетом ничего не выводит. Как впрочем и аналогичное обращение к msOrder. В виде извращения, но согласно документации пытаюсь вывести всю инфу в плейсхолдер, а затем вызвать его, но тоже пустой экран.
[[!msGetOrder?
&id=`25`
&tpl=``
$toPlaceholder=`five`
]]
[[+five]]
Ткните носом где я неправ, пожалуйста.И да, идентификатор заказа верный, такой заказ есть, так что явно не в этом проблема.
Комментарии: 4
мне необходимо знать, как называются лежащие в msgetOrder плейсхолдеры.Ммм… А просто открыть код сниппета и посмотреть его параметры не получается? Там код-то вроде не такой большой, разобраться, в принципе, можно.
так я тоже делал, но тут вопрос — почему не работает так как описано? У кого не спрашиваю, у всех всегда выводится на экран весь массив данных.
Но и плюс ко всему, это к тому чтобы открыть код сниппета и посмотреть там- только те плейсхолдеры, которые лежат в массиве total отображаются на сайте и преобразовываются в значения. Как я понимаю, это от того что они входят в сниппет как простые элементы, а не как массивы. Но в сниппете есть еще и массив — delivery / order/ payment и куча других. В них входят элементы, зачасую с одним и тем же именем. К примеру есть delivery->name а есть payment->name. Не соображу как составить имя плейсхолдера, чтобы обратиться к ним.
Но и плюс ко всему, это к тому чтобы открыть код сниппета и посмотреть там- только те плейсхолдеры, которые лежат в массиве total отображаются на сайте и преобразовываются в значения. Как я понимаю, это от того что они входят в сниппет как простые элементы, а не как массивы. Но в сниппете есть еще и массив — delivery / order/ payment и куча других. В них входят элементы, зачасую с одним и тем же именем. К примеру есть delivery->name а есть payment->name. Не соображу как составить имя плейсхолдера, чтобы обратиться к ним.
Вопрос интересный)
Но если покопаться на сайте, то можно найти как выводить в письме почти любые поля. Я например, делаю так
Имя: [[+address.receiver]]
Телефон: [[+address.phone]]
Email: [[+user.email]]
То есть, насколько помню, там всего два массива — addres и user, и в каждом можно перебрать нужные параметры…
Но если покопаться на сайте, то можно найти как выводить в письме почти любые поля. Я например, делаю так
Имя: [[+address.receiver]]
Телефон: [[+address.phone]]
Email: [[+user.email]]
То есть, насколько помню, там всего два массива — addres и user, и в каждом можно перебрать нужные параметры…
Спасибо
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.