MW MP Form の自動返信メールの内容を条件に応じて変更する方法

「MW WP Form の自動返信メールの内容を条件によって変えるにはどうしたらいいんだろう?」
そんな方向けに。
MW WP Form の自動返信メールを条件に応じて変更する方法をご紹介します。
MW WP Form の自動返信メールを条件に応じて変更する方法
MW WP Form では、上記のように管理画面から自動返信メールの内容を設定することができます。
しかし、ある条件によって自動返信メールの内容を変更するには、管理画面から設定することは出来ず、function.php
で設定する必要があります。
クライアント向けの自動返信メールと管理者側の自動返信メールで、設定方法が異なるのでそれぞれご紹介します。
クライアント向けの自動返信メールの設定
クライアント向けの自動返信メールの内容を変更するには、mwform_auto_mail_mw-wp-form-xxx
というフックを使用します。
xxx
部分はフォームの識別子[mwform_formkey key="xxx"]
のxxx
部分の数字を入れます。
/**
* my_mail
* @param object $Mail
* @param array $values
* @param MW_WP_Form_Data $Data
*/
function my_mail( $Mail, $values, $Data ) {
// $Data->get( 'hoge' ) で送信されたデータが取得できます。
$Mail->to = 'hoge@example.jp'; // 送信先を変更
$Mail->from = 'hoge@example.jp'; // 送信元を変更
$Mail->sender = 'hoge'; // 送信者を変更
$Mail->subject = 'テストです'; // 件名を変更
$Mail->body = '本文だよ'; // 本文を変更
// $Mail->send(); で送信もできます。
return $Mail;
}
add_filter( 'mwform_auto_mail_mw-wp-form-xxx', 'my_mail', 10, 3 );
管理者側の自動返信メールの設定
管理者側の自動返信メールの内容を変更するには、mwform_admin_mail_mw-wp-form-xxx
というフックを使用します。
xxx
部分はフォームの識別子[mwform_formkey key="xxx"]
のxxx
部分の数字を入れます。
クライアント向けの自動返信メール設定のフックと似ていますが、間違えないようにしましょう。
**
* my_mail
* @param object $Mail
* @param array $values
* @param MW_WP_Form_Data $Data
*/
function my_mail( $Mail, $values, $Data ) {
// $Data->get( 'hoge' ) で送信されたデータが取得できます。
$Mail->to = 'hoge@example.jp'; // 送信先を変更
$Mail->from = 'hoge@example.jp'; // 送信元を変更
$Mail->sender = 'hoge'; // 送信者を変更
$Mail->subject = 'テストです'; // 件名を変更
$Mail->body = '本文だよ'; // 本文を変更
// $Mail->send(); で送信もできます。
return $Mail;
}
add_filter( 'mwform_admin_mail_mw-wp-form-xxx', 'my_mail', 10, 3 );
おわりに
今回ご紹介した方法を使うことで、郵便番号が入力されていたときだけ住所をメール本文に追加したりすることが出来ます。
他にも、メルマガ登録などで、1度登録済みのユーザーが再度登録する時だけメール内容を変更するといったことも出来ます。
MW WP Form のに関する情報は公式サイトが分かりやすいので、是非一度目を通してみてください。
マニュアル
基本的な使い方(1)フォームを作成するMW WP Form > 新規作成 でフォームを作成します。「タイトル」には何のフォームかわかりやすい名称をつけると良いでしょう。その下の本文入力エリアにHTMLとショートコー…