Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

php код в шаблоне письма

00 голосов
4
Можно ли вставить php-код в шаблон письма и каким образом?
спросил 22 Ноя, 13 от HeadDead (100 баллов)

4 Ответы

00 голосов
Нельзя.
Вставлять можно только текстовые строки, для чего предусмотрены поля вида #FIELD_NAME#
ответил 13 Янв, 14 от Ly (4,580 баллов)
00 голосов
#FIELD_NAME# - содержит результат работы рнр-скрипта
ответил 30 Апр, 14 от Wisp (220 баллов)
00 голосов
часто приходится натыкаться что битриксовые почтовые шаблоны не могут содержать логики(
это минус...
ответил 26 Авг, 14 от Hax (1,100 баллов)
00 голосов
не красиво конечно через eval, но можно сделать так:
1) В почтовом шаблоне добавить код вида
#PHP#mysuperfunction(rand(0,1));#
2) Описываем свою функция mysuperfunction в init.php например
Код
function mysuperfunction($n){
return $n==1?'hi':'bye';
}

3) Используем событие OnBeforeEventSend, где 2м параметром приходит $db_mail_result_array, где есть MESSAGE - ключ по которому находится тело письма. Парсим текст в поиска конструкции по регулярке
"~#PHP#([^#])#~i"
делаем eval по полученному значению, затем preg_replace результата eval все по той же регулярке
ответил 01 Янв, 15 от druid (580 баллов)

Похожие вопросы

0 голосов
2 ответов
спросил 29 Янв, 14 от Gair (220 баллов)
0 голосов
7 ответов
спросил 14 Авг, 13 от KAKYWA (180 баллов)
0 голосов
2 ответов
спросил 19 Фев, 14 от Liziya (100 баллов)
0 голосов
7 ответов
спросил 13 Июль, 13 от delajla (500 баллов)