Отправка электронной почты в формате 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; 
  }   
 5
Author: kiamlaluno, 2013-12-17

1 answers

Как оказалось, электронная почта HTML была включена. Проблема заключалась в таблицах стилей, с которыми было связано электронное письмо.

Если вы направляетесь в admin/config/system/mimemail, вы можете либо связать электронное письмо с таблицами стилей вашего сайта, либо настроить файл mail.css в каталоге тем по умолчанию.

Я подозреваю, что если вы используете подтему и у вас нет mail.css, она будет просто использовать оригинальную тему mail.css, которая, вероятно, не то, что вам нужно.

 3
Author: Dominic Woodman, 2014-01-28 19:23:16