サポート » プラグイン » MW WP Formの管理者宛メールについて

  • 解決済 imap

    (@ixt220)


    クライアントワークで、MW WP Formのプラグインを使っています。
    管理者宛メール設定で「送信者」「送信元」をそれぞれユーザーがフォームで記入した
    「名前」(name)
    「メールアドレス」(email)
    にしたいと思っております。
    下記トピックスを参考にいろいろやってみたのですが、うまくいきませんでした。
    教えて頂けると幸いです。
    よろしくお願いします。

    [解決済み] MW WP Formの管理者宛メール設定(複数)

    add_filter( 'mwform_admin_mail_mw-wp-form-92', 'my_admin_mail' );
    function my_admin_mail( $Mail ) {
    
      $Mail->to = $data['email'];
      $Mail->sender = $data['name'];
      $Mail->send();
    
      return $Mail;
    }
2件の返信を表示中 - 1 - 2件目 (全2件中)
  • add_filterは第3引数で優先度、第4引数でコールバック関数に渡す引数の数を指定できます。
    mwform_admin_mail_xxxフックの場合は引数を2つ(1つ目が$Mail、2つ目が$data)とれるようになっているので、コールバック関数内で$dataを使う場合は下記のように記述する必要があります。

    add_filter( 'mwform_admin_mail_mw-wp-form-92', 'my_admin_mail', 10, 2 );
    function my_admin_mail( $Mail, $data ) {
    
      $Mail->to = $data['email'];
      $Mail->sender = $data['name'];
      $Mail->send();
    
      return $Mail;
    }

    早急なご回答ありがとうございます。
    $Mail->toだったら、ユーザー側に届いてしまったので、
    $Mail->fromに修正したら、無事管理者宛にメールが届き、
    送信者・送信元にユーザーの入力値が入っていました。
    ただ、今度は管理者宛のメールが2通届くようになってしまい、
    $Mail->send();を削除してみたら、1通のみ届くようになりました。
    最終的なコードは以下になりました。

    add_filter( 'mwform_admin_mail_mw-wp-form-92', 'my_admin_mail', 10, 2 );
    function my_admin_mail( $Mail, $data ) {
    
      $Mail->from = $data['email'];
      $Mail->sender = $data['name'];
    
      return $Mail;
    }

    早急なご回答と分かりやすいご説明に、大変感謝しております。
    この度は誠にありがとうございました。
    今後とも宜しくお願い致します。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「MW WP Formの管理者宛メールについて」には新たに返信することはできません。