Minishop2 не могу понять как вставить tv из карточки товара в письмо
Здравствуйте.
Никак не получается вставить дополнительное поле из карточки товара в шаблон письма tpl.msEmai.
Насколько я понял, за вывод оформленного заказа отвечает сниппет msGetOrder.
На странице оформления заказа делаю так: [[!msGetOrder? &tpl=`tpl.msGetOrder_my` &includeTVs=`size_title`]]
и пытаюсь вывести дополнительное поле на самой странице «Заказ получен» и в письме: {$product.size_title}
В результате, на странице «Заказ получен» tv выводится, а в письме — нет… Прошу помочь.
Никак не получается вставить дополнительное поле из карточки товара в шаблон письма tpl.msEmai.
Насколько я понял, за вывод оформленного заказа отвечает сниппет msGetOrder.
На странице оформления заказа делаю так: [[!msGetOrder? &tpl=`tpl.msGetOrder_my` &includeTVs=`size_title`]]
и пытаюсь вывести дополнительное поле на самой странице «Заказ получен» и в письме: {$product.size_title}
В результате, на странице «Заказ получен» tv выводится, а в письме — нет… Прошу помочь.
Комментарии: 9
Если вы хотите передать значение тв в письмо, записывайте его в options[].
Спасибо. А не могли бы Вы подсказать, как именно это сделать?
в карточке товара внутри формы добавления в корзину добавляете
<input type="hidden" name="options[size_title]" value="{$_modx->resource.size_title}">
В корзине и в письме появится свойство $product.options['size_title']
Спасибо, получилось. )
Но, правда, новую опцию не очень хотелось заводить — я ведь этим tv просто подменяю название свойства «размер» на свое для разных товаров…
Но, правда, новую опцию не очень хотелось заводить — я ведь этим tv просто подменяю название свойства «размер» на свое для разных товаров…
В смысле новую опцию заводить? В настройках-то? А я разве говорил, что это нужно сделать? Массив формируется вне зависимости от того, есть эта опция или нет в настройках, а значение можете туда любое записать хоть ТВ, хоть псевдоним
не знаю… пока я не завел новую опцию в настройках minishop — не работало… я так понял, в базе должно было поле появиться, куда эту опцию запихивать…
Вы знаете, что в форме можно передать массив, если название поля написать вот так fieldname[]? Также, если вы посмотрите в стандартный чанк msProductRow, то заметите, что в форме есть скрытое поле options[], оно передаётся на сервер как массив и в него можно запихнуть любое значение. Если вам пришлось создать новую опцию, значит либо я не понял что вы делаете, либо вы. Третьего не дано? И для общего развития, можете посмотреть в базе как хранятся опции, ради эксперимента, сделайте, как я написал, потом найдите в таблице ms2_order_products товар и посмотрите какие у него есть опции ?
Что-то типа
{$product.id | resource : 'size_title'}
Супер. Это именно то что нужно. Спасибо.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.