【MW WP Form】フォームの目的によって必須項目を変更する
2021-10-24
PR 当ページのリンクには広告が含まれています。
フォームに必須項目が多いと入力が面倒になります。なるべくカンタンに送信できるフォームを作りたいですよね。
目的によって、必須項目にするかどうかを切り替えるフォームの作り方をまとめました。
このページの手順でできること
- ・「MW WP Form」で作成したフォームに設定できます。
- ・フォームのラジオボタン選択肢によって分岐させ、必須項目を切り替えます。
Contents
「MW WP Form」で必須項目を分岐で変更するフォームの作り方
SAMPLE
最初の項目で「資料請求」を選んだ場合だけ、「郵送先のご住所」「資料の種類」が必須項目になります。
さらに「資料の種類」で「その他」を選んだ方だけ必須でテキストボックスに入力してもらいます。
こちらは完成見本です。資料請求を選んで「確認する」をタップするとバリテ-ションエラーメッセージが表示されます。(送信はできません)
ステップ① MW WP Formを編集する
こちらはフォームのコード例です。
<table> <tr> <th>お問い合わせの種類</th> <td>[mwform_radio name="type" children="お問い合わせ,ご予約,資料請求,その他" vertically="true"]</td> </tr> <tr> <th>資料請求をお選びの方は必ずお答えください</th> <td> <p>郵送先のご住所</p>[mwform_text name="your-address" size="60"] <p>資料の種類</p>[mwform_radio name="document" children="商品1,商品2,商品3,その他" vertically="true"] <p>その他をお選びの方は詳しくご記入ください</p>[mwform_textarea name="other" cols="50" rows="5"] </td> </tr> </table> <div class="contact_btn"> [mwform_submitButton name="submit" confirm_value="確認する" submit_value="送信する"][mwform_bback class="modoru" value="back"]戻る[/mwform_bback] </div>
MW WP Formの編集画面ではバリテーションルールは設定しません。
ステップ② function.phpに追加
続いてfunction.phpで下記バリテーションルールを設定します。
//MW WP Form バリテーション function my_validation_rule( $Validation, $data ) { if ( $data['type'] === '資料請求' ) { $Validation->set_rule( 'your-address', 'noEmpty', array( 'message' => '※資料請求の方は必ずご記入ください。' ) ); $Validation->set_rule( 'document', 'required', array( 'message' => '※資料請求の方は必ず選択してください。' ) ); } if ( $data['document'] === 'その他' ) { $Validation->set_rule( 'other', 'noFalse', array( 'message' => '※その他を選択した方は必ずご入力ください。' ) ); } return $Validation; } add_filter( 'mwform_validation_mw-wp-form-★★★', 'my_validation_rule', 10, 3 );
一番下の行「mw-wp-form-★★★」、★★★にはフォームの識別子の数字が入ります。
ラジオボタン「name="type"」で選択したものが「資料請求」だったら「name="your-address"」(テキスト)、「name="document"」(ラジオボタン)を必須項目にします。
また、「name="document"」(ラジオボタン)で「その他」を選択した場合、「name="other"」(テキストエリア)を必須項目にします。
おわりに
こちらではラジオボタンの選択肢によって表示・非表示を切り替える方法をご紹介しています。ぜひご覧ください!
【MW WP Form】ラジオボタンの選択によって分岐 表示・非表示を変える
プラグイン「MW WP Form」はフィルターフックの解説ページがあり、様々な機能を追加することができます。WordPress歴6年ですが、自分にとってダントツに使いやすいフォームプラグインです。
マニュアル|フィルターフック|MW WP Form