Contact Form 7を使用している場合、フォーム送信後にサンクスページへリダイレクトする方法を紹介します。この方法では、Flamingoプラグインを使用してデータを保存した後にリダイレクトを行います。
ステップ1: functions.phpにフックを追加
まず、テーマのfunctions.phpファイルに以下のコードを追加します。このコードは、Flamingoにデータが保存された後にサンクスページへリダイレクトするためのものです。php
// Contact Form 7送信後にサンクスページへリダイレクト
function custom_wpcf7_redirect_after_submission() {
$redirect_url = $_SERVER['HTTP_REFERER'] . '/thanks/';
wp_redirect($redirect_url);
exit;
}
add_action('wpcf7_after_flamingo', 'custom_wpcf7_redirect_after_submission', 10, 1);
コードの説明
- フックの追加: wpcf7_after_flamingoフックを使用して、Flamingoにデータが保存された後に実行される関数を定義します。
- リダイレクト処理: $_SERVER[‘HTTP_REFERER’]を使用して、リファラーのURLに/thanks/を追加し、wp_redirect()関数でリダイレクトします。
- スクリプトの終了: exit;を使用して、リダイレクト後にスクリプトの実行を終了します。
まとめ
この方法を使用することで、Contact Form 7の送信完了後に自動的にサンクスページへリダイレクトすることができます。Flamingoプラグインを利用してデータを保存した後の処理を簡単に実装できるため、ユーザーにとって使いやすいインターフェースを提供できます。