この実装、面倒なら代行します
以前の事例で
GET値をContact Form 7に渡してフォームに埋め込む
を掲載しました。
この事例では、投稿IDをGET値に乗せてフォームに渡し、その投稿IDが属するターム(カテゴリ)情報をフォームに埋め込む、ということでした。
さて、今回も同じようなcontact form 7フォームへのGET値渡しですが、
今回はフォームのプルダウン選択項目を引数によって選択状態(selected)にする方法のご紹介です。
contact form 7 画面で次のようなプルダウンを登録した場合を例にしてみます。
[select pullli include_blank “新卒エントリー” “中途採用エントリー” “その他”]
プルダウン項目を直接GETに流すとURLに日本語が出てしまってアレなので、
プルダウンの順番(数字)をGETで送って、その順番のプルダウン項目を選択状態にしてみます。
functions.phpに下記を追記します。
function kaiza_form_select_filter($tag) { $formName = 'pullli'; //プルダウン名 if ( ! is_array( $tag ) ) return $tag; if( isset($_GET[$formName]) ) { $name = $tag['name']; if( $name === $formName ) { if( is_array( $tag['values'] ) ) { $index = $_GET[$formName]; if( $index !== false ) { $tag['options'][] = 'default:' . $index; //デフォルト値設定 } } } } return $tag; } add_filter( 'wpcf7_form_tag', 'kaiza_form_select_filter', 11, 2);
そして、リンク元を次のようにすれば、フォーム画面で「新卒エントリー」が選択された状態(selected)になります。
<a href="entry/?pullli=0">新卒エントリーはコチラ</a>
WordPressカスタマイズ事例やウェブ制作ノウハウの新着情報、お役立ち情報を
リアルタイムにメルマガ配信!
100ウェブで手がけた制作・開発案件を一部、ご紹介。
クライアントからご相談いただいた内容とその実装におけるポイント、工期、予算について確認いただけます。
【テレワーク実施中 につきお電話転送中】
コール中1秒程度無音状態になりますがそのままお待ちください。
受付時間
平日 10:00~18:00
メールでのお問い合わせでも
1営業日以内にご連絡いたします。