2020.12.21  2021.04.04

MW WP FORMで自動返信メールの内容を条件分岐で記述する方法

皆さんこんにちは!マコブログです!

本日はWordPressのプラグイン、「MW WP FORM」で、自動返信メールの内容を条件分岐によってカスタマイズする方法についてご紹介したいと思います。

まず、今回はMW WP FORMの公式が発信しているフィルターフックを使用します。
使うフックはこちらです。


add_filter('mwform_auto_mail_raw_mw-wp-form-XXX', 'entry_user', 10, 3);

上記は、ユーザー宛の自動返信メールの内容をカスタマイズできる物です。
functions.phpに以下の記述をしていきます。解説は後ほど。

記述例

add_filter('mwform_auto_mail_raw_mw-wp-form-XXX', 'entry_user', 10, 3);
function entry_user($Mail_raw, $values, $Data) {
$Mail_raw->body = '';
 $Mail_raw->body .= <<<CONTACT
{name}様 //
CONTACT;

if ($Data->get('fan')) { // ファンの方はこっち
$Mail_raw->body .= <<<CONTACT
この度はMAKOBLOGにファンメールを送っていただき…。
CONTACT;
}

if ($Data->get('anti')) { // アンチの方はこっち
$Mail_raw->body .= <<<CONTACT
この度はMAKOBLOGにアンチメールを送っていただき…。
CONTACT;
}

$Mail_raw->body .= <<<CONTACT
引き続き、よろしくお願いいたします!
CONTACT;
}



コードの解説

上記のコードを解説していきます。

まず、先程説明したadd_filter(‘mwform_auto_mail_raw_mw-wp-form-XXX’…のXXXにフォーム番号を入れましょう。
フォーム番号は管理画面のMWの設定画面から確認できます。

関数内に、$Mail_raw->bodyがあると思いますが、これは、自動返信メールの中身をカスタマイズするものになっています。
通常は、「$Mail_raw->body = ‘文字列~~’;」と記述するのですが、今回は条件分岐がある為、
「$Mail_raw->body .= <<<CONTACT 中身~ CONTACT;」となります。

.= <<<CONTACTとCONTACT;の中の範囲が自動返信メールに添付される内容になっておりますので、自由に記述してみてください。

また、if ($Data->get(‘fan’))とありますが、$Data->getとすることで、フォーム内の情報を引っ張ることができます。
fanというネーム属性がフォーム内に存在していれば上の条件分岐に反応し、antiというネーム属性がフォーム内に存在していれば下の条件分岐に反応します。



同じネーム属性の値で判断したい場合は、if ($Data->get(‘fan’) === “hogehoge”)等としてみてください。

以上でMW WP FORMの自動返信メールの中身を条件分岐する方法の解説を終わります!
こちらの記事も是非チェックしてみてください↓
MW WP FORMでカスタム投稿機能の内容をフォームの選択肢にする方法

それでは!また次回の記事で!

あなたにオススメの記事
マコブログ
Makoto
高校卒業と同時にプログラミングを学習しはじめ、今年で4年目になります。
普段はフロント周りで作業をしていて、WordPressの開発とSEO対策には自信があります。
マコブログでは、プログラミングやSEO対策についての情報を発信しています。

よく読まれる記事

S&P500研究所

【マコブログ 2nd】S&P500研究所がOPENしました!!

Read More →