Добавление любого поля -макроса в почтовый шаблон

Добавление любого поля -макроса в почтовый шаблон

Добавление своего поля (макрос в терминологии Битрикс) в почтовый шаблон заключается в регистрации обработчика init.php, получение значения поля, присваиваем значение макросу, который будет доступен в почтовом шаблоне и отправляем CEvent::Send наше почтовое событие.

Скачать пример

Пример кода добавления своего поля в почтовый шаблон Битрикс

 // регистрируем обработчик для благодарностей
AddEventHandler("iblock", "OnAfterIBlockElementAdd", Array("MyAdmin", "OnAfterIBlockElementAddHandler")); class MyAdmin {     // создаем обработчик события "OnAfterIBlockElementAdd"
    function OnAfterIBlockElementAddHandler(&$arFields)     {
 if(!$arFields["RESULT"])
        return false;
//инфоблок из которого получаем значения
        if ($arFields["IBLOCK_ID"] == 25)
        {
$db_props = CIBlockElement::GetProperty(25, $arFields['ID'], "sort", "asc", Array("CODE"=>"USER"));
if ($ar_props = $db_props->Fetch())
    {
$THANKSUSER=$ar_props['VALUE']; //получаем значение сотрудника, которому объявили благодарность
}
$rsUser = CUser::GetByID($THANKSUSER); 
$arUser = $rsUser->Fetch(); 
$WORKEREMAIL=$arUser['EMAIL']; //получаем значение почты сотрудника, которому объявили благодарность
{ $arIBlockElement = GetIBlockElement($arFields["ID"]);
                $arSend = array(
//WORKER_EMAIL -это и есть наш макрос, который вставляем в шаблон #WORKER_EMAIL#
'WORKER_EMAIL' => $WORKEREMAIL,
'TEXT' => $arIBlockElement['DISPLAY_PROPERTIES']['USER']['DISPLAY_VALUE'].' добавил благодарность');
$arrSite = 's1';
                CEvent::Send('THANKS2',$arrSite,$arSend); //отправляем, срабатывает почтовое событие у которого есть шаблон с нашим макросом
}
        }
    }
}

Ещё статьи:

19.01.2021 Задача модуль регистрации участника акции
Задача по разработке модуля регистрации участника акции на сайт Битрикс. В модуле должны быть следующие поля: ID: 316

07.01.2021 Почему в битрикс автоматически отключаются пользователи
На сайте с определённой периодичностью происходила деактивация аккаунтов пользователей. Логин становился неактивным и зайти на сайт не получалось. ID: 314

07.01.2021 Ошибка сокетов
Бывает выскакивает такая ошибка в битрикс "Работа с сокетами    Ошибка! Не работает", "Замечание. Не удалось проверить из-за ошибки в работе с сокетами" ID: 315

© 2015-2021 Web админ
Связаться по WhatsApp