Wordpress 用の Contact Form 7 プラグインでカスタム機能を実装するのに少し問題があります。
私がやりたいことはとても簡単です。問題の連絡先フォームは通常の連絡先問い合わせフォームであるため、通常の機能 (データの郵送) を維持する必要があります。ただし、送信者が連絡先の問い合わせをメールで送信するだけでなく、クライアントのメーリング リストに登録するかどうかを選択できるチェックボックスもフォームに用意しています。
クライアントは大量メール送信に Bronto を使用します (CC や Mailchimp と同様)。Bronto には「直接追加」機能 (詳細はこちら) があり、URL に必要なパラメーター (電子メール アドレス、購読するリストなど) を含む画像を埋め込むことで、Bronto アカウントに連絡先を追加するためのパラメーターを送信できます。
お問い合わせフォームのパラメーターを使用して画像の URL を作成することはできますが、実際に画像のリクエストを送信することは別の問題です。ここでは PHP と JS の両方で頭がいっぱいで、どのコースを受講すればよいかわかりません。
現在、wpcf7_before_send_mail
CF7 に組み込まれている php フックを使用しています。これにより、フォーム データを収集して URL を作成できるようです。ただし、プラグインは AJAX を使用し、実際にはフォーム送信時に別のページにリダイレクトしないため、おそらくサーバーが何を認識していないため、どのような種類の php 出力 (echo、alert、さらには error_log) も正常に使用できないようです。に書き込むことになっています。
functions.php で:
add_action( 'wpcf7_before_send_mail', 'bronto_contact_add' );
function bronto_contact_add( $cf7 ) {
$emailcf = $cf7->posted_data['email'];
echo $emailcf;
}
これは、エコーが機能するかどうかを確認するための単なるテストです。機能しません。代わりに、フォームは送信時にハングアップするだけで、回転する読み込み gif が永久に表示されます。
私がする必要があるのは、cf7 オブジェクトのパラメーターを使用して画像の URL を作成し (これは問題ありません)、その画像要求を Bronto サーバーに送信することです (これは私が混乱している部分です)。これが送信時に別の php ページにリダイレクトされる通常のフォームである場合、これを行うのにまったく問題はありませんが、あまり知らない AJAX を使用しているため、今はかなり迷っています。
これを達成するための最良の方法がどのようになるかについて、誰かが光を当てるのを助けることができますか?