Drupal 7 Rules モジュールを使用して特定のイベントでメールをトリガーおよび送信していますが、メッセージが送信される前にメールヘッダーを変更する必要があります。
Drupal 7ルールモジュールを使用して送信される特定の送信メールに「 RFC 5322 で使用される)ヘッダーを追加する適切な方法は何でしょうか」 ?
以下は drupal_mail ()を使用する場合に機能しますが、 Rules を使用する場合にこのフックを適用する方法はわかりません。
function hook_mail($key, &$message, $params) {
switch ($key) {
case 'key_name_here':
$message['Reply-to'] = $params['mail'];
$message['subject'] = $params['subject'];
$message['body'] = $params['body'];
$message['headers']['Reply-To'] = $params['mail'];
break;
}
}
// One note to the above script, lines 4 and 7 seem redundant and likely need work.
それでもhook_mailを使用できます。オーバーライドするルールのキーを特定する必要があります。キーは、rules_action_mail()関数$key = 'rules_action_mail_' . $name . '_' . $element->elementId();
で設定されます。ここで、nameはルール名、element idはルールの数値IDです。カスタムモジュールの重みが、データベースのシステムテーブルのルールモジュールよりも高いことを確認する必要があります。