質問の回答に基づいて別のページに移動させる

  • Naver ブログを共有する
  • Naver バンドに共有する
  • Facebook 共有する
  • Twitter 共有する
  • 카카오스토리공유하기

ワードプレスお問い合わせフォームから質問の回答に基づいて別のページに移動したい場合があります。 たとえば、アンケートの作成者の選択に応じて、「マーケティング」、「顧客サポート」あるいは他の部門のページやサイトに移動させたいときがあります。 このような状況ではWPFormsやQuformなどコンタクトフォームのプラグインを使用して、特定の項目の回答に応じて、希望の場所にリダイレクトすることができます。

WPFormsプラグインを使用して質問の回答に基づいて、他のページやサイトに移動させる

WPFormsは300万個以上のサイトに使用されている無料のコンタクトフォームのプラグインです。 無料版では、機能に制限がありますが、シンプルなお問い合わせフォームをワードプレスのサイトにつけてたいときに使用することができます。

WPFormsでは、次のようなコードをテーマの関数ファイルに追加して、特定の項目への回答に基づいて目的のページまたはサイトに移動させることができます。

//質問の回答に基づいて、他のページやサイトに移動させる/ ** * WPForms:Conditional form redirects based on field value。 フィールドの値に基づいて条件付きリダイレクト* @param string $ url URL form will redirect to * @param int $ form_id Form ID * @param array $ fields Submitted form fields * @return string * / function wpf_custom_redirect($ url、$ form_id、 $ fields){// Only consider changing the redirect if its for form#50 if( '50' == $ form_id){// In the example below、we look at the submitted value for field#5 // If that value is "test"、then we change the redirect URL if(!empty($ fields [ '5'] [ 'value'])&& "test" == $ fields [ '5'] [ 'value']){$ url = 'https://wpforms.com'; }} return $ url; } add_filter( 'wpforms_process_redirect_url'、 'wpf_custom_redirect」、10、3); //ソース:https://gist.github.com/slaFFik/ff355fe1d3f2ba8670691852112b5912

上記のコードではform_idは、実際のフォームIDに変更する必要があります。 そしてfield IDもそのフィールドIDに変更してください。 コードは、チャイルドテーマの関数ファイル(functions.php)に追加する必要が今後のテーマを更新時に追加したコードが消えません。

上記のコードが動作するには、お問い合わせフォームの 確認 設定で Confirmation TypeGo to URL(Redirect)に設定し、 Confirmation Redirect URLフォームが提出された後、移動先のページやサイトのURLを入力する必要があります。

質問の回答に基づいて別のページに移動させる -  WPFormsワードプレスコンタクトプラグイン

Quformプラグインを使用して質問の回答に基づいて、他のページやサイトに移動させる方法

有料コンタクトフォームのプラグインである Quformでもユーザーの回答に基づいて送信ボタンをクリックしたときに、他のページやサイトにリダイレクトすることができます。

例コード:

//特定の質問の回答に基づいて、他のページやサイトに移動させる// Redirect users depending on the answer to a specific question in Quform add_filter( 'quform_confirmation_redirect_url_1_1」、function($ url、Quform_Confirmation $ confirmation、Quform_Form $ form){$ choice = $ form-> getValue( 'quform_1_5'); if( 'Yellow」== $ choice){$ url =' https://www.google.com ';} elseif(「Green」== $ choice) {$ url = 'https://www.yahoo.com';} return $ url;}、10、3);

上記のコードで1_1をconfirmation unique IDに変更する必要があります。 そしてフィールドID(上記のコードでは、1_5)も適切に変更してください。 同様チャイルドテーマの関数ファイルに、上記のコードスニペットを追加する必要が今後のテーマの更新時に追加した内容が初期化されません。

WPFormsと同様にQuformも、上記のコードが動作するには、Confirmationの設定でお問い合わせフォームを提出後、カスタムURLにリダイレクトするためのオプションを選択する必要があります。 Confirmation settings 画面で 種類Redirect to a custom URL選択したURLにフォームを送信した後移動先のURLを入力します。

Quformワードプレスお問い合わせのプラグイン - フォームの送信後の動作設定

Gravity Formsプラグインでフォームの送信後にリダイレクトされるURLを設定する

Gravity Formsプラグインを使用している場合は、次のようなフック(フィルタ)を応用することができます。 以下は、フォームIDに基づいてフォームを送信した後の動作(リダイレクト/確認メッセージ)を制御するためのコードです。 フィールドの値をチェックする条件文を追加すると、上記で述べたのと同様の効果を得ることができるでしょう。

add_filter( 'gform_confirmation'、 'custom_confirmation」、10、4); function custom_confirmation($ confirmation、$ form、$ entry、$ ajax){if($ form [ 'id'] == '101'){$ confirmation = array( 'redirect' => 'http://www.google .com '); } elseif($ form [ 'id'] == '102'){$ confirmation = "Thanks for contacting us。We will get in touch with you soon"; } return $ confirmation; }

グラビティフォームプラグインで提供されるフックは Hooks文書を参考にしてみてください。 フック(アクション/フィルタ)の詳細な説明と一緒に例示が出ているので、簡単に応用が可能であることです。

おわりに

ワードプレスで、特定の質問に対するユーザーの回答に基づいて、他のページやサイトに移動する方法について説明しました。 ワードプレスクイズプラグインでも、このような機能を提供する場合、クイズの回答に基づいて別のページに移動することが可能になります。 (使用しているクイズプラグイン開発者に連絡して、同様の機能を提供しているを確認してみるといいようです。)

ワードプレスコンタクトフォームのプラグインでは、Contact Form 7が最も多く使用されていて、その後に続いてWPFormsが名を連ねています。 CF7は、フォームの送信後にリダイレクトするURLを設定するためのフックを提供していないようです。

参考



コメントを残す