MW WP Form 選択内容でメールの送信先を変更する
| WordPress、WordPressプラグインみなさんご存知「MW WP form」ですが、選択肢によって送り先を変更するのがちょいちょい増えてきました。
プラグインでカスタマイズがいろいろできるっていうのもすごいよね。
いろいろなことを想定して作られているんでしょうね。
懐が深いですねって地味に感動をしている髭人です。
選択肢を作成する
[mwform_select name="お問い合わせの種類" children="商品について,ウェブサイトについて,その他"]
こんな感じでごく普通の選択肢を作ればOKです。
送り先を設定する
functions.phpに送り先の設定をします
function autoback_my_mail( $Mail_raw, $values, $Data ) {
if ($Data->get( 'お問い合わせの種類' ) == '商品について'){
$Mail_raw->to = 'mailA@higezine.com';
} else if ($Data->get( 'お問い合わせの種類' ) == 'ウェブサイトについて'){
$Mail_raw->to = 'mailB@higezine.com';
} else if ($Data->get( 'お問い合わせの種類' ) == 'その他'){
$Mail_raw->to = 'mailC@higezine.com';
}
return $Mail_raw;
}
add_filter( 'mwform_admin_mail_mw-wp-form-XX', 'autoback_my_mail', 10, 3 );
elseを設定しない場合は、ギミックが発生しないのでプラグインでの設定が反映されます。
‘mwform_admin_mail_mw-wp-form-XX’のXXはお問い合わせを作ったIDを設定してください。
フックを’mwform_auto_mail_raw_mw-wp-form-XX’にすると返信メールの方の設定ができます。
// 管理者側に届くやつ [admin] って入ってる方
add_filter( 'mwform_admin_mail_mw-wp-form-XX', 'admin_my_mail', 10, 3 );
// 自動返信の方、送信者側に届くやつ [auto]になる
add_filter( 'mwform_auto_mail_mw-wp-form-XX', 'autoback_my_mail', 10, 3 );
wordpressはフックでいろいろできて便利ですね。
送信先以外にも変更は可能です。
変えるとしたらサブジェクトかな
$Mail_raw->subject = '{name}様からお問い合わせがありました。';
みたいな感じで設定ができるようです。
昔みたいに別でシステムを用意しなくてもWordPressで管理ができるようになって便利ですね。