Работа с почтовыми шаблонами

Почтовые шаблоны расположены на странице Настройки > Настройки продукта > Почтовые и СМС события > Почтовые шаблоны. Чтобы отредактировать почтовый шаблон, выберите пункт Изменить в меню действий нужного шаблона:
Откроется
форма редактирования
почтового шаблона. Суть большинства параметров ясна их названия, опишем только некоторые:
- От кого - указывается электронный адрес, который будет указываться как e-mail отправителя письма.
- Кому - указываются
адреса
Адреса перечисляются через запятую.
тех, кому будут отправлены письма.
Примечание: Если в поля От кого и Кому не проставлены конкретные адреса электронной почты, то подставляются адреса по умолчанию. Система сначала подставляет адрес из настроек сайта, к которому привязан шаблон, и затем, если такой адрес не обнаружен, из настроек Главного модуля. Поскольку адрес по умолчанию в обоих случаях один, то он будет подставлен в оба поля. - Скрытая копия - о факте отправки письма на электронные адреса, указанные в данном поле, не будут знать ни главный адресат, ни получатели, указанные в поле Копия. Кроме того, адресаты, указанные в поле Скрытая копия, также не будут видеть друг друга в получателях письма.
- Важность - нажмите на стрелочку и укажите степень важности отсылаемого уведомления.
- Тема - укажите тему письма. Удобно использовать для рассылок определённой тематики. Тема должна быть предварительно создана.
Само сообщение представлено на вкладке Тело сообщения. При редактировании сообщения можно выбрать более удобный для вас в данной форме формат представления сообщения: Текст, HTML или Визуальный редактор.
Доступные значения полей для параметров и тела сообщения можно брать ниже в виде макросов:
Кроме макросов, в почтовых шаблонах можно указать php-код (с версии главного модуля 15.0.7). К примеру:
Добрый день! Ваш логин: #LOGIN# Текущая дата: <?=date('d.m.Y')?>
Добавление шаблона |
Нажав кнопку Добавить шаблон на контекстной панели вы откроете форму добавления, кторая фактически идентична форме редактирования шаблона, за исключением того, что вам нужно выбрать тип ранее созданного почтового события, к которому будет привязан шаблон:
Чтобы увидеть все поля формы, нажмите показать дополнительные заголовки....
Визуальный редактор |
В визуальном редакторе почтового шаблона допустимо использование компонентов С версии главного модуля 15.0.7. . Но нужно учитывать, что:
- Подключение компонентов выполняется методом
EventMessageThemeCompiler::includeComponent()
вместо метода CMain::IncludeComponent Метод подключает компонент 2.0. Нестатический метод.
Подробнее... , хотя передаваемые аргументы нового метода аналогичны аргументамIncludeComponent
. - В визуальном редакторе при редактировании почтового шаблона отображаются только почтовые компоненты у которых в файле описания (.description.php) указан тип
"TYPE" => "mail"
. Например:<?if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true) die(); $arComponentDescription = array( "NAME" => GetMessage("SBBS_DEFAULT_TEMPLATE_NAME"), "TYPE" => "mail", "DESCRIPTION" => GetMessage("SBBS_DEFAULT_TEMPLATE_DESCRIPTION"), "ICON" => "/images/sale_basket.gif", "PATH" => array( "ID" => "e-store", "CHILD" => array( "ID" => "sale_basket", "NAME" => GetMessage("SBBS_NAME") ) ), ); ?>
Без этого компонент можно будет подключить только вручную вставив код вызова.
- Подключенный в почтовом шаблоне компонент может выполняться на хите (отправка письма на хите), соответственно компонент не должен использовать:
- глобальный объект
USER
Глобальный объект класса CUser, хранит в себе данные авторизации текущего пользователя, предназначен для манипуляции параметрами текущего пользователя.
Подробнее... , так как в нём содержатся данные о том кто сделал хит, а не о том, кому отправляется письмо; - константы
SITE_ID
Идентификатор текущего сайта при использовании в Публичной части, код языка при использовании в административной части.
Подробнее... , LANGUAGE_ID Если это публичная часть, то в данной константе храниться поле "Язык" из настроек текущего сайта, если административная часть, то в данной константе храниться идентификатор текущего языка.
Подробнее... , SITE_TEMPLATE_ID Идентификатор текущего шаблона сайта.
Подробнее... .Вместо них нужно использовать вызовы методов:
$this->getSiteId()
- сайт, указанный в почтовом событии,
$this->getLanguageId()
- язык сайта, указанного в почтовом событии,
$this->getSiteTemplateId()
- шаблон сайта, указанного в почтовом событии.
Внимание! При отправке письма по шаблону, будет выполнен код компонента. Языковые файлы в компоненте будут подключены для того языка, который указан в настройках сайта указанного в почтовом событии. Для письма используется та кодировка, которая указана в настройках сайта, код которого передан в событии.Таким образом, если на сайте используется многосайтовость с разными языками, Многосайтовость и языковые версии сайта – это разные понятия, хотя иногда взаимосвязанные. При необходимости языковые версии можно реализовать и как отдельные языковые папки (разделы) в составе одного сайта и как отдельные сайты.
В данном случае следует предварительно проанализировать, какая именно информация должна быть представлена на различных языках и какие действия с объектами сайта предполагается производить.
Подробнее... то на хите по русскому сайту, может быть отправлено письмо для другого языка. - глобальный объект
USER
Глобальный объект класса CUser, хранит в себе данные авторизации текущего пользователя, предназначен для манипуляции параметрами текущего пользователя.
Темы сообщения
Тема сообщения - это шаблон оформления сообщения. Создаётся из списка тем со страницы Настройки > Настройки продукта > Почтовые и СМС события > Темы оформления. Технология создания темы аналогична созданию
шаблона сайта
Шаблон дизайна - это внешний вид сайта, в котором определяется расположение различных элементов на сайте, художественный стиль и способ отображения страниц. Включает в себя программный html- и php-код, графические элементы, таблицы стилей, дополнительные файлы для отображения контента. Может так же включать в себя шаблоны компонентов, шаблоны готовых страниц и сниппеты.
Подробнее...
и имеет аналогичную форму. Технически тема оформления - это шаблон сайта в папке /bitrix/templates
. При создании именно темы для почтовых сообщений нужно выбрать значение Шаблон для почтовых писем в поле Тип. В этом случае в файле описания (.description.php) будет указан тип "TYPE" => "mail"
:
<?$arTemplate = array( "NAME" => "Тестовая тема оформления", "DESCRIPTION" => "Тестовая тема оформления", "SORT" => "", "TYPE" => "mail", ); ?>
Стили, указанные в файлах стилей будут вставлены в письмо (inline) в том месте, где будет вызов <?=$this->showStyles()?>
Темы оформления, так же как и шаблоны сайта, могут содержать php-код.
Поиск шаблона почтового компонента выполняется по стандартному алгоритму. Если у почтового шаблона, где подключается компонент, проставлена тема оформления, то папка темы оформления используется в качестве текущего шаблона сайта при поиске шаблона компонента.
Документация по теме: |
и Ваше мнение важно для нас