Отправка данных из формы на почту средствами Битрикс

  • 2726
   
Разделы

Я не претендую на право называться автором всей размещенной здесь информации, так как некоторые моменты были заимствованы в доступных источниках и немного переработаны для удобства пользования.


По возможности указываю ссылки на источники.


Копируйте, комментируйте, переделывайте, пользуйтесь. Кому не жалко, оставляйте ссылку на источник.

Частный вебмастер по разработке сайтов на 1С Битрикс и WordPress

В конце предыдущей заметки по сохранению отправленных данных из формы в инфоблок Битрикса, скачиваем готовые материалы

При реализации отправки будут рассмотрены два метода Битрикса:

  • CEvent::Send - старый метод
  • Event::send - аналог метода CEvent::Send в новом ядре D7

Создаем и настраиваем новый Тип события

Для этого переходим в Настройки - Настройки продукта - Почтовые и СМС события - Типы событий. Задаем название типа события и заполняем поля по образцу.

Отправка данных на почту средствами Битрикс

Создаем и настраиваем новый Почтовый шаблон

Для этого переходим в Настройки - Настройки продукта - Почтовые и СМС события - Почтовые шаблоны. Выбираем ранее созданный тип события и заполняем поля по образцу. В самом низу страницы, есть подсказка по доступным полям.

Отправка из формы на почту средствами Битрикс

Далее переходим к редактированию Файла-обработчика на стороне сервера

Реализация метода CEvent::Send

/*** отправка средствами Битрикс (((!!!старое ядро!!!))) ***/
/* метод отправки (SEND - тип почтового события,
s1 - ид сайта,
в массиве поля на отправку,
2 пустых необязательных параметра,
в конце массив ид файлов) */
CEvent::Send("SEND", 's1', array(
"AUTHOR" => $name,
"AUTHOR_EMAIL" => $email,
"TEXT" => $text,
), '','', $arF);
unset($name); // обнуление объекта

Реализация метода Event::Send из ядра D7

В самом верху страницы добавляем подключение модуля Event

use Bitrix\Main\Mail\Event;

В нужном месте прописываем отправку

/*** отправка средствами Битрикс методом Event::send из D7 ***/
/* метод отправки (SEND - тип почтового события,
s1 - ид сайта,
C_FIELDS поля на отправку,
2 пустых необязательных параметра,
FILE массив ид файлов) */
Event::send(array(
"EVENT_NAME" => "SEND",
"LID" => "s1",
"C_FIELDS" => array(
"AUTHOR" => $name,
"AUTHOR_EMAIL" => $email,
"TEXT" => $text,
),
"FILE" => $arF,
));

Готовые материалы по данной заметке, с учетом предыдущих. Скачать

Комментарии

Комментарий отправлены на валидацию!