Отправка электронной почты в формате HTML с помощью drupal mail()
Я пытаюсь отправлять электронные письма в формате HTML из модуля и использую drupal_mail()
.
Невозможно отправить электронное письмо в формате HTML только с помощью drupal_mail()
(см. здесь ), и я установил Mimemail. Тем не менее, электронное письмо по-прежнему очищается от всех HTML-тегов.
Нужно ли мне делать какие-либо дополнительные звонки в шаблоне электронной почты, или я что-то еще забыл?
Настройка
Почтовая система
- формат() -- mimemail система
- почта() -- модуль SMTP
Имитационная почта
- Формат электронной почты: Отфильтрованный HTML (Мой отфильтрованный HTML позволяет использовать теги
<p>
и<br>
. - Включить все таблицы стилей сайта.
Модуль SMTP
- Разрешить электронные письма в формате HTML
Почта Drupal_mail
tellafriend_mail($key, &$message, $params) {
$message['headers']['MIME-Version'] = '1.0';
$message['headers']['Content-Type'] = 'multipart/mixed;';
$message['headers']['Content-Type'] = 'text/html;';
$message['subject'] = t('This is a test email');
$message['body'][] = t("This is a test email")."<p></p><p>".t("This should be a new paragraph.")."</p><p></p><p>".t("And a third paragraph.")."</p>";
$message['params']['attachments'] = $params;
}
1 answers
Как оказалось, электронная почта HTML была включена. Проблема заключалась в таблицах стилей, с которыми было связано электронное письмо.
Если вы направляетесь в admin/config/system/mimemail
, вы можете либо связать электронное письмо с таблицами стилей вашего сайта, либо настроить файл mail.css в каталоге тем по умолчанию.
Я подозреваю, что если вы используете подтему и у вас нет mail.css, она будет просто использовать оригинальную тему mail.css, которая, вероятно, не то, что вам нужно.