[英]drupal Webform HTML Email hooks
我正在嘗試向用戶發送一封感謝郵件,以HTML格式提交表單。 我通過在我的template.php文件中使用鈎子來發現,這樣可以正確設置標頭:
function mythemename_webform_mail_headers($form_values, $node, $sid) {
$headers = array(
'Content-Type' => 'text/html; charset=UTF-8; format=flowed; delsp=yes',
'X-Mailer' => 'Drupal Webform (PHP/'. phpversion() .')',
);
return $headers;
}
這對“謝謝”電子郵件非常有用。 站點管理員收到的帶有表單結果的電子郵件也是html,但並未將換行符轉換為該電子郵件中的中斷。 我不知道如何為此使用鈎子,因此我必須編輯webform.module文件並執行以下操作:
function webform_mail($key, &$message, $params) {
$message['headers'] = array_merge($message['headers'], $params['headers']);
$message['subject'] = $params['subject'];
//$message['body'][] = drupal_wrap_mail($params['message']); // replaced this with line below
$message['body'][] = nl2br(drupal_wrap_mail($params['message']));
}
可以用template.php中的鈎子來完成嗎?
您可以使用hook_mail_alter
編輯與創建郵件hook_mail
,這正是Web窗體使用。
您不能在主題中使用hook_mail_alter(),而只能在自定義模塊中使用。
老話題,但我想仍然有用。 在webform模塊的編輯頁面上,有一個選項/字段集,其進行了其他處理:
<?php
$to = $form_values['submitted_tree']['uw_gegevens']['e_mail'];
$from = "no-reply@example.com";
$achternaam = $form_values['submitted_tree']['uw_gegevens']['uw_naam'];
$message = drupal_mail('webform_extra', 'reply', $to, language_default(), array('body' => $body), $from, TRUE);
function webform_extra_mail($key, &$message, $params) {
$message['subject'] = "TEXT.";
$message['body'] = "
TEXT, " . $params['achternaam'] . "
TEXT.
KIND REGARDS,
TEXT
";
} ?>
希望這可以幫助
Guus van de Wal
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.