Модификация тела письма перед отправкой в Drupal

Рассмотрим два варианта, как зацепиться к отправляемым письмам и внести туда свои изменения.

Первый вариант заключается в прямом изменении тела письма перед отправкой. Для этого мы реализуем hook_mail_alter(&message).

MAIL ALTER хук

Переменная $message содержит весь набор данных, используемых при отправке письма. Там есть и имя модуля, и ключ письма, а также дополнительные данные, передаваемые в MailManagerInterface::mail как $params.

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

Объявление токена

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

Давайте объявим токен [user:verification-code], и при использовании его в шаблоне письма, он автоматически будет заменяться значением, которое мы запрограммируем.

Хуки подсистемы токенов должны быть объявлены в файле MYMODULE.tokens.inc. Это hook_tokens_info и hook_tokens. Первый описывает новые токены, а второй их реализует.

Мало букафф? Читайте есчо !

Форма поиска товаров на Drupal

Май 11, 2023 г.

Здесь подробно рассмотрим небольшую задачу для сайта под управлением CMS Drupal. Требуется выводить поисковую форму для товаров в виде блока. Форма ...

Читать

Реализация контроллера для списка autocomplete формы

Май 11, 2023 г.

См. основной материал для введения. Контроллер должен вернуть Json набор пар значений value - label. Ранее в модуле мы уже объявили связь для маршрутизации с нашим контроллером в файле custom_blocks.routing.yml. Теперь реализуем код. /src/Controller/ProductSearchAutoCompleteController.php ...

Читать

Drupal deployment

Май 18, 2023 г.

Шпаргалка по настройке и проведению деплоймента для Drupal (начиная с 8й версии). Деплоймент выполняется с использованием git, drush, composer и configuration management. На сервере должны выполняться команды в следующей последовательности: ...

Читать

Удаление неиспользуемых файлов в Drupal

Октябрь 17, 2024 г.

Особенно полезно, когда вы использовали проект как шаблон для другого сайта и надо почистить данные. Друпал хоть и показывает статистику использования файлов, но удалять файлы не позволяет из реестра /admin/content/files. Напишем небольшой скрипт, ...

Читать
 

Комментарии к «Модификация тела письма перед отправкой в Drupal»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: