サポート » プラグイン » contact form7の自動返信メールの制御について

  • WordPressのContact Form7で、
    回答のコピーを自動返信メールとして送信したいのですが、
    「回答のコピーを希望する」というチェックボックスを用意し、チェックした人のみに回答のコピーを送るように制御したいです。
    どのようなプログラムを書けばよいか、ご教示いただけますと幸いです。
    よろしくお願いいたします。

7件の返信を表示中 - 1 - 7件目 (全7件中)
  • lassy49491さん、こんにちは。

    アイデアレベルの回答にはなりますが、 Contactform 7 のフックを使って実装することになりそうです。
    例えばwpcf7_before_send_mailというフックがあるので、チェックがあれば別のメールを送信するとかでもできそうな気がします。
    メール(2) を用意しておいて、チェックがなければメール(2) の内容を削除してしまうとか、できるかできないかは検証していないため分かりません…

    ご参考になれば。

    トピック投稿者 lassy49491

    (@lassy49491)

    ありがとうございます。
    回答いただいた上で非常に恐縮ですが、
    wpcf7_before_send_mailというフックをどう使うのか(どうプログラムを書くのか)が初心者で全くわかっておらず、そこを教えていただくことは難しいでしょうか? 

    こんにちは

    メール (2)で自動返信メールを送信するように設定しておき、wpcf7_additional_mailというフィルターフックで$_POSTをチェックして該当チェックボックスのPOSTがあれば渡された引数をそのまま返し、なければ空配列を返すようにすればいいかなと思います。

    実際にプログラムを書いたわけではありませんので、動作はご自身でご確認ください。

    • この返信は1年、 5ヶ月前にmunyaguが編集しました。
    トピック投稿者 lassy49491

    (@lassy49491)

    ありがとうございます。
    これはfunction.phpのファイルに書き込めば良いのでしょうか

    functions.php でもいいですし、インクルードされている他の管理しやすいファイルでもいいですし、プラグインにしてもいいと思います。

    トピック投稿者 lassy49491

    (@lassy49491)

    ありがとうございます
    以下コードを見つけたのですが、
    skip_2の部分を、チェックボックスの名前(checkbox_390など)に変えてfunction.phpの最下部などに記載すれば問題ないでしょうか

    ***********************

    function my_wpcf7_additional_mail( $additional_mail, $contact_form ) {
     if ( isset( $_POST['skip_2'] ) ) {
        $additional_mail = $additional_mail;    #チェックボックスにチェックあり
      }else
        {
            $additional_mail = [ ];                           #チェックボックスにチェックなし
            }
      return $additional_mail;
    }
    add_filter( 'wpcf7_additional_mail','my_wpcf7_additional_mail', 10, 2 );

    そのコードが何の目的で記述されているのか分からないので配当はむずかしいです。
    しかし、そのコードはそもそも同じ目的のためにかかれたのではないでしょうか。

    • この返信は1年、 5ヶ月前にmunyaguが編集しました。
7件の返信を表示中 - 1 - 7件目 (全7件中)
  • トピック「contact form7の自動返信メールの制御について」には新たに返信することはできません。