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

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

Добавление своего поля (макрос в терминологии Битрикс) в почтовый шаблон заключается в регистрации обработчика 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); //отправляем, срабатывает почтовое событие у которого есть шаблон с нашим макросом
}
        }
    }
}

Ещё статьи:

16.03.2023 Тест тарифа Стандарт netangels.ru для битрикс
Параметры хостинга:
Виртуальный хостинг, тариф "Стандарт"
Дисковое пространство -19Гб
Оперативная память - 1Гб ID: 439

16.02.2023 Модуль SEO фильтр сотбит условие текст не срабатывает и не выводится
Тут тоже грешил на модуль SEO фильтр сотбит, где в условии текст не срабатывал и не выводился. Проверка на стороне битрикс сразу не показала проблему, но при внимательном просмотре выяснилось, что в файле вывода элементов, в месте где подключены переменные из модуля Сотбит ID: 438

16.02.2023 Модуль SEO фильтр сотбит режет нижний текст в условии
Случай с модулем SEO фильтр  сотбит, думал, что это ошибки в работе модуля. Два абзаца режет текст. Если посмотреть текст в настройках условия id 14 ничем не отличается от другого. Причём соседнее условие id 13 всё нормально. ID: 437

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