О web-разработке
и даже немного больше...

Почтовая система Битрикс

Почтовая система БитриксКому приходилось работать с Битрикс-ом скорее всего сталкивался с почтовой системой, которая позволяет работать с Email сообщениями на сайте.

Рассмотрим кратко к чему сводиться работа с почтовой системой:
1. Создание типа почтового события.
2. Создание почтового шаблона.
3. Создание почтового события.

1. Создание типа почтового события.

Каждый почтовый шаблон привязывается к определенному типу почтового события. Тип определяет набор специальных полей (placeholder’ов), которые могут быть использованы в почтовом шаблоне. В момент создания почтового события (т.е. готового сообщения) эти поля будут инициализированы конкретными значениями.

Типы почтовых событий можно создавать через интерфейс администраторской части сайта, либо посредством API.

Через интерфейс:
Настройки > Настройки продукта > Почтовые события > Типы почтовых событий

Посредством API:

<?
$obEventType = new CEventType;
$obEventType->Add(array(
    "EVENT_NAME"    => "NEW_USER",
    "NAME"          => "Новый пользователь",
    "SITE_ID"       => "ru",
    "DESCRIPTION"   => "
        #USER_ID# - ID пользователя
        #LOGIN# - Логин
		#NAME# - Имя пользователя
		#EMAIL# - Эл. адрес пользователя
        "
    ));
?>

2. Создание почтового шаблона.
При возникновении на сайте события на отправку какого-либо письма, система ищет подходящий шаблон для такого письма. Если шаблон найден, то письмо отправляется в соответствии с этим шаблоном.
Почтовые шаблоны можно создавать через интерфейс администраторской части сайта, либо посредством API.

Через интерфейс:
Настройки > Настройки продукта > Почтовые события > Почтовые шаблоны

Посредством API:

<?
$arr["ACTIVE"]      = "Y";
$arr["EVENT_NAME"]  = "NEW_USER";
$arr["SITE_ID"]     = array("ru","en");
$arr["EMAIL_FROM"]  = "support@href.kz";
$arr["EMAIL_TO"]    = "support@href.kz";
$arr["BCC"]         = "";
$arr["SUBJECT"]     = "Новый пользователь - #ID#";
$arr["BODY_TYPE"]   = "text";
$arr["MESSAGE"]     = "
На сайте был зарегистрирован новый пользователь.
ID: #USER_ID#
Логин: #LOGIN#
Имя: #NAME#
Почта: #EMAIL#
";
$obTemplate = new CEventMessage;
$obTemplate->Add($arr);
?>

3. Создание почтового события.
Почтовое событие может быть создано только посредством API. В момент создания почтового события, специальные поля, используемые в почтовом шаблоне, будут инициализированы конкретными значениями.

Пример создания почтового события:

<?
$eventName = 'NEW_USER';
$arFields = Array(
		"USER_ID" => 1,
		"LOGIN" => 'myLogin',
		"NAME" => 'Rustam',
		"EMAIL" => 'htmakers@gmail.com'
	);
$event = new CEvent;
$event->Send($eventName, SITE_ID, $arFields, "N");
?>

Кроме того в конце выполнения каждой страницы сайта автоматически вызывается функция CEvent::CheckEvents. Данная функция собирает неотправленные почтовые события и отправляет их в виде E-Mail сообщений с помощью функции bxmail.

*Для написания статьи были использованы материалы: Почтовая система, Типы почтовых событий, Почтовые шаблоны, CEventMessage::Add, CEvent::Send, CEvent::CheckEvents()

Опубликован: 20.02.2013 г.

См. также:

«Не удалось установить соединение с сервером. Проверьте …».
Получение Email-адреса покупателя в заказе (Bitrix D7)
Работа с URL-адресами в Bitrix D7
Работа с купонами в Bitrix API
Добавляем пункт меню для списков в админке Битрикс
Диалоговые окна в Bitrix API
Создание инфоблока при установке модуля
Создание копии корзины из заказа на Bitrix D7

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Комментарии
  • Загрузка...
Друзья сайта