質問: MW WP Formで入力のあった項目のみ自動返信メールに表示したいと思っていますが このようなことは可能ですか? 通常、自動返信メールの設定は管理画面の自動返信メール設定の 「本文」で下記のように入力をして設定するかと思います。 ``` 下記内容で受付しました。 名前:{name} 項目1:{item1} 項目2:{item2} ``` このままですと、例えば「項目1」が入力されなかった場合 自動返信メールでは下記のように返信されるかと思います。 ``` 下記内容で受付しました。 名前:hogehoge 項目1: 項目2:koumoku2 ``` これを下記のように項目1(入力が無かった項目)を間引いて返信することは可能でしょうか? ``` 下記内容で受付しました。 名前:hogehoge 項目2:koumoku2 ``` 調べてみると自動返信メール用に下記2つのフィルターフックがあるようですが 活用の仕方がよくわかりませんでした。 片方のフィルターがキー使用ができ、もう片方ができないといった違いがあるようです。 mwform_auto_mail_raw_mw-wp-form-xxx mwform_auto_mail_mw-wp-form-xxx どうぞよろしくお願いいたします。
回答: こういうことですかね。 ``` function my_mail( $Mail, $values, $Data ) { $item1 = ''; $item2 = ''; $name = '名前: '.$Data->get( 'name' )."\r\n"; if( !empty( $Data->get( 'item1' ) ) ) { $item1 = '項目1: '.$Data->get( 'item1' )."\r\n"; } if( !empty( $Data->get( 'item2' ) ) ) { $item2 = '項目2: '.$Data->get( 'item2' )."\r\n"; } $Mail->body = $name.$item1.$item2; return $Mail; } add_filter( 'mwform_auto_mail_mw-wp-form-フォーム識別子の key ', 'my_mail', 10, 3 ); ```