miniShop2
miniShop2 copied to clipboard
Добавить в шаблон email писем - tpl.msEmail новые поля
Запрос функции
Резюме
Вывести возможные поля в шаблоне email-письма, типа данные пользователя, адрес, вариант доставки и вариант оплаты: $user[], $address[], $delivery[] и $payment[]
Зачем это нужно?
Из документации не совсем понятно, что эти массивы так же передаются в шаблоны email. А с их наличием будет проще понять, да и данные поля достаточно часто нужны по умолчанию.
~p.s. Кстати, почему нельзя указать свой чанк с шаблоном email-письма? Как-то странновато...~
- у каждого статуса заказа можно указать email чанк, просто они все наследуют tpl.msEmail
А по поводу добавления массивов поддерживаю, да, часто используются, можно было бы для менеджера добавить данные по юзеру по умолчанию
Про наследование я понимаю, но все-равно странновато, при обновлении email-шаблон затереть можно (чанк, конечно, при обновлении выбрать нужно, но все же), да и вроде для всего свои чанки указать можно, а тут - ~~нет~~ есть (нужно было доки внимательнее читать :) ).
Про наследование я понимаю, но все-равно странновато, при обновлении email-шаблон затереть можно (чанк, конечно, при обновлении выбрать нужно, но все же), да и вроде для всего свои чанки указать можно, а тут - нет.
Можно указать и свои
P.S. За вас всё сделал Василий
Вот мой пример с одного проекта
{extends 'tpl.msEmail'}
{block 'title'}
{'ms2_email_subject_new_manager' | lexicon : $order}
{/block}
{block 'products'}
{parent}
<div style="padding: 0 10px">
<h2>Контактные данные</h2>
<p>Имя: <b>{$address.receiver}</b></p>
<p>Телефон: <b>{$address.phone}</b></p>
<p>e-mail: <b>{$user.email}</b></p>
<p>Комментарий: <b>{$address.comment}</b></p>
<h2>Адрес доставки</h2>
<p>Индекс: <b>{$address.index}</b></p>
<p>Регион: <b>{$address.region}</b></p>
<p>Город: <b>{$address.city}</b></p>
<p>Улица: <b>{$address.street}</b></p>
<p>Дом: <b>{$address.building}</b></p>
<p>Корпус: <b>{$address.properties.extfld_corpus}</b></p>
<p>Строение: <b>{$address.properties.extfld_stroenie}</b></p>
<p>Квартира: <b>{$address.room}</b></p>
<p>Оплата: <b>{$payment.name}</b></p>
<p><b>{$order.comment}</b></p>
<p><b>{$delivery.price}</b></p>
{*if $payment_link?}
<p style="margin-left:20px;{$style.p}">
{'ms2_payment_link' | lexicon : ['link' => $payment_link]}
</p>
{/if*}
</div>
{/block}
А я думаю, что можно подумать не над организацией массивов данных передающих в чанк, а к примеру над организацией дизайна формой. 2.4.0 она стала достаточно привлекательной. Но я бы поработал над внешним видом, придумал фишки и поработал над адаптацией.
Вот так выглядит наши формы по умолчанию у клиентов на сопровождении.
С мобильного телефона так же все смориться прекрасно.
@DetaliDigital Про дизайн стоит создать отдельный issue.
@Ruslan-Aleev это замечательно. Я подготовлю новое issue с данным предложением.
Давай по твоему issue составим чек-лист, потому что я читаю и суть не могу понять.
- Тебе не понятно как организован массив и каким образом можно пользоваться шаблонными переменными.
- Не понятно как выбрать шаблон письма, но тут тебе @CrazyBoy49z разъяснил как это работает и вопрос снимается?
Если еще какие-то вопросы, которые убежали от меня?
@DetaliDigital Про дизайн стоит создать отдельный issue.
https://ui8.net/vladimir-kudinov/products/mailto-email-templates
Для примера
Дизайном и версткой займусь я.