Как изменить заголовок from в электронном письме, отправленном с Drupal, на формат "Fullname" <email@address.com>
?
Мне удалось сделать это на сайте Drupal 6 в прошлом, но у меня больше нет доступа к этому сайту, и я не помню, как это сделать.
Вы можете использовать hook_mail_alter()
для изменения адреса электронной почты «от» любого электронного письма, отправленного с вашего сайта. Используемый адрес электронной почты должен соответствовать стандарту RFC, что соответствует названию вашего вопроса. Но имена пользователей могут быть хитрыми и могут содержать недопустимые символы. Есть комментарий к документам D6, который предоставляет пример кода для правильного форматирования адреса электронной почты . Ваш код будет выглядеть примерно так ...
function yourmodule_mail_alter(&$message) {
$message['from'] = $message['headers']['From'] = '"Full Name" <email@address.com>';
}
Кроме того, имейте в виду, что простая установка адреса «от» может не дать желаемых результатов во всех почтовых клиентах (см. Обсуждение очереди проблем Drupal ). Вам также может потребоваться установить «отправитель», «ошибки» и «ответить» в зависимости от ваших требований. Эти значения находятся в «заголовке» $message
переменной из приведенного выше примера кода.
Это метод из Drupal 6 для добавления имени сайта в электронное письмо. Замените variable_get ('site_name, Drupal') на Полное имя сайта, которое вы хотите.
функция для hook_mail_alter () не изменилась в Drupal 7, так что это должно работать.
источник
Gmail & outlook
. Спасибо :)Что касается настроек, которые вы должны изменить, это все еще проблема в D7. Если вы сомневаетесь, используйте следующий код в вашем hook_mail_alter:
источник