予約フォーム入力以外で送信するメール(予約完了等)に関して、送信する前にメールの送信情報を変更可能なメッセージフィルター機能を追加しました。

メール送信の際利用するデータ項目は、

  • 宛先(to)
  • 件名(subject)
  • 内容(body)
  • 送信者メールアドレス(from)
  • ccとbcc(header)

になります。

これらの項目を新しく準備した「mtssb_mail_exchange」メッセージフィルター機能により、変更することができるようになりました。

メッセージフィルターのパラメータについて

メッセージフィルターに渡されるデータは複数のパラメータで、以下の配列形式で渡されます。

array(
    'state' => メール種別,
    'aid' => 予約品目ID,
    'to' => 送信先アドレス,
    'subject' => 件名,
    'body' => メール文,
    'from' => 送信元アドレス,
    'header' => ccとbcc送信先の配列
);
  1. state:メール種別
    送信するメールの種類を示し、以下の文字列の1つがセットされます。
    ・confirm 予約完了
    ・cancel キャンセルメール
    ・canceled キャンセル実行済み
    ・remind リマインダー
  2. aid:予約品目ID
    予約データの予約品目ID
  3. to:送信先アドレス
    空白(canceled以外)の場合は予約者のメールアドレスになります。
  4. subject:件名
    メールの表題
  5. body:メール文
    送信文データ
  6. from:送信元アドレス
    アドレスの指定は「送信者名 <name@example.com>」の表現がお勧めです。
  7. header:ccとbcc
    利用する場合は配列で次のように指定します。
    array(‘cc’ => 送信先アドレス、’bcc’ => 送信先アドレス)

利用例

メールの送信元は、通常管理画面で設定された施設のメールアドレスが「from」に渡されます。以下はこれを別の送信元「webmaster@example.com」に変更する例です。

add_filter('mtssb_mail_exchange', 'mail_exchange');
function mail_exchange($mail) {
    $mail['from'] = '管理者 <webmaster@example.com>';
    return $mail;
}

ご注意

メッセージフィルター関数から戻されたデータはWordPressの「wp_mail()」関数に渡します。パラメータに不具合があると正常に送信されないことがありますので、ご利用の際はご留意下さい。