質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

Q&A

解決済

1回答

3274閲覧

WordPressのプラグインMW WP Formでチェックボックスで複数送信先をCcで選択できるようにしたい。

KojiR

総合スコア7

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

0グッド

0クリップ

投稿2021/06/08 01:56

編集2021/06/08 02:03

WordPressのプラグインMW WP Formを使って問い合わせフォームを作成しました。
現在はセレクトボックスで送信先、Ccを単体選択はできているのですが、
要望としましてはチェックボックスで選択された複数にCcにてメールを送信したい。

fanctions.php内に分岐を記載しております。

どちらも選択を1つだけにすると機能しますが2個以上選択するとMW WP Formの管理画面で設定したToにしかメールが届きません。

フォーム本体

[mwform_checkbox name="type" children="valueA,valueB,valueC" separator="," vertically="true"] [mwform_text name="email" class="text" placeholder="例) xxxxxxxxxxxxxx@sample.com"] [mwform_submitButton name="btn" class="btn" confirm_value="次へ進む(入力内容の確認)" submit_value="この内容で送信する"] [mwform_backButton class="btn2" value="戻って修正する"]

第1パターン

add_filter( 'mwform_admin_mail_mw-wp-form-29', 'mwform_change_mail_recipient', 10, 3 ); function mwform_change_mail_recipient( $Mail, $values, $Data ) { $data_type = $Data->get( 'type' ); switch ( $data_type ) { case 'valueA': $Mail->cc = 'mailA@gmail.com'; break; case 'valueB': $Mail->cc = 'mailB@gmail.com'; break; case 'valueC': $Mail->cc = 'mailC@gmail.com'; break; } return $Mail; }

第2パターン

function autoback_my_mail( $Mail, $values, $Data ) { if ($Data->get( 'type' ) == 'valueA'){ $Mail->cc = 'mailA@gmail.com'; } if($Data->get( 'type' ) == 'valueB'){ $Mail->cc = 'mailB@gmail.com'; } if($Data->get( 'type' ) == 'valueC'){ $Mail->cc = 'mailC@gmail.com'; } return $Mail; } add_filter( 'mwform_admin_mail_mw-wp-form-29', 'autoback_my_mail', 10, 3 );

どのようにすれば複数の対象にCcで送信できるようになりますでしょうか?
もしくは他の方法などありましたらご教授よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

KojiR

2021/06/09 01:13

ありがとうございます。 参考にしていろいろ試してみていますが3つすべてにチェックをいれて送信すると 最後の1つだけが対象になっているようですべてにCcで送信できない状況です。
guest

回答1

0

ベストアンサー

えーっと、
WordPressのMW WP FORMの自動返信メール(functions.php)で表示されない
https://teratail.com/questions/342124
と考え方は同じです。

今回は、複数のメールを送るという部分が違うだけです。

function autoback_my_mail( $Mail, $values, $Data ) { $targets = $Data->get( 'type' ); $targets_list = array( 'valueA', 'valueB', 'valueC' ); $target_Mail = clone $Mail; foreach ( $targets_list as $target ) { if ( strpos( $targets, $target ) !== false ) { if ( $target == 'valueA' ) { $target_Mail->cc = 'mailA@example.com'; $target_Mail->send(); } if ( $target == 'valueB' ) { $target_Mail->cc = 'mailB@example.com'; $target_Mail->send(); } if ( $target == 'valueC' ) { $target_Mail->cc = 'mailC@example.com'; $target_Mail->send(); } } } return $Mail; } add_filter( 'mwform_admin_mail_mw-wp-form-xxxxx', 'autoback_my_mail', 10, 3 );

MW WP Formの管理者宛メール設定(複数)
https://ja.wordpress.org/support/topic/mw-wp-form%e3%81%ae%e7%ae%a1%e7%90%86%e8%80%85%e5%ae%9b%e3%83%a1%e3%83%bc%e3%83%ab%e8%a8%ad%e5%ae%9a%ef%bc%88%e8%a4%87%e6%95%b0%ef%bc%89/

参考まで。

投稿2021/06/09 07:51

8-0_nyan5

総合スコア2352

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問