MiniShop 2 и его сниппеты с пустым шаблоном

Господа и дамы, буду очень рад если поможете.
С этой проблемой я столкнулся несколько месяцев назад, когда меня попросили несколько изменить информацию, которая приходит пользователю и менеджеру после заказа на почту. Добавить в нее и адрес и способ доставки и так далее.
Я уже писал здесь два вопроса тогда
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]]
Ткните носом где я неправ, пожалуйста.
И да, идентификатор заказа верный, такой заказ есть, так что явно не в этом проблема.
Александр Мельник
25 октября 2016, 07:24
modx.pro
1 114
0

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

Дмитрий
25 октября 2016, 11:05
+1
мне необходимо знать, как называются лежащие в msgetOrder плейсхолдеры.
Ммм… А просто открыть код сниппета и посмотреть его параметры не получается? Там код-то вроде не такой большой, разобраться, в принципе, можно.
    Александр Мельник
    25 октября 2016, 13:30
    0
    так я тоже делал, но тут вопрос — почему не работает так как описано? У кого не спрашиваю, у всех всегда выводится на экран весь массив данных.
    Но и плюс ко всему, это к тому чтобы открыть код сниппета и посмотреть там- только те плейсхолдеры, которые лежат в массиве total отображаются на сайте и преобразовываются в значения. Как я понимаю, это от того что они входят в сниппет как простые элементы, а не как массивы. Но в сниппете есть еще и массив — delivery / order/ payment и куча других. В них входят элементы, зачасую с одним и тем же именем. К примеру есть delivery->name а есть payment->name. Не соображу как составить имя плейсхолдера, чтобы обратиться к ним.
      Дмитрий
      25 октября 2016, 14:03
      0
      Вопрос интересный)
      Но если покопаться на сайте, то можно найти как выводить в письме почти любые поля. Я например, делаю так
      Имя: [[+address.receiver]]
      Телефон: [[+address.phone]]
      Email: [[+user.email]]
      То есть, насколько помню, там всего два массива — addres и user, и в каждом можно перебрать нужные параметры…
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
4