Модификация тела письма перед отправкой в 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. Первый описывает новые токены, а второй их реализует.

Написать комментарий

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

Добавление своих suggestion в Drupal 9/10

Май 2, 2023 г.

Для добавления suggestions требуется использовать соответствующий группе шаблонов hook. Если название шаблона не известно, то его можно подсмотреть в режиме ...

Читать

Не появляется форма переиндексации на странице /admin/config/search/search-api/index/

Июль 25, 2024 г.

Если ваш view базируется на search API источнике данных, то важно, чтобы данные были проиндексированы. Но иногда форма переиндексации отсутствует на странице ...

Читать

 

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

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



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