問い合わせフォームで最も大事な入力項目はメールアドレスですね。
メールアドレスの誤入力を未然に防ぐために、フォームにメールアドレス入力欄を2つ設けて、一致した場合にOKとするやり方があります。
これをContact Form 7でやってみるとこうなります。
テーマのfunctions.phpに以下を記述。
add_filter( 'wpcf7_validate_email', 'wpcf7_validate_email_filter_extend', 11, 2 ); add_filter( 'wpcf7_validate_email*', 'wpcf7_validate_email_filter_extend', 11, 2 ); function wpcf7_validate_email_filter_extend( $result, $tag ) { $type = $tag['type']; $name = $tag['name']; $_POST[$name] = trim( strtr( (string) $_POST[$name], "n", " " ) ); if ( 'email' == $type || 'email*' == $type ) { if (preg_match('/(.*)_confirm$/', $name, $matches)){ //確認用メルアド入力フォーム名を ○○○_confirm としています。 $target_name = $matches[1]; if ($_POST[$name] != $_POST[$target_name]) { if (method_exists($result, 'invalidate')) { $result->invalidate( $tag,"確認用のメールアドレスが一致していません"); } else { $result['valid'] = false; $result['reason'][$name] = '確認用のメールアドレスが一致していません'; } } } } return $result; }
で、Contact Form 7側の登録ページで
<tr> <th>メールアドレス <span class="required">必須</span></th> <td>[email* your-email]</td> </tr> <tr> <th>メールアドレス確認 <span class="required">必須</span></th> <td>[email* your-email_confirm placeholder "確認のためもう一度入力してください"]</td> </tr>
こんな感じ。
htmlは上を参考にご自由に作成してください。
ポイントは項目タグ名に your-email_confirm を使うことです。
WordPressカスタマイズ事例やWeb制作ノウハウの新着情報、
お役立ち情報をリアルタイムにメールでご案内
100ウェブでは、WordPressのカスタマイズだけでなく、様々な最新のウェブサービスを活用したウェブ制作ノウハウを保有しております。
あらゆるサービスを利用して顧客満足を向上し、売上の上がるサイトをつくりましょう。
100ウェブでは、すべての方に無料でデザインをご提案。
提案されたデザインを見てから購入するか決めてください。気に入らなければデザイン料金無料!
お気軽にご相談ください。
受付時間
平日 10:00~18:00
【テレワーク実施中 につきお電話転送中】
コール中1秒程度無音状態になりますがそのままお待ちください。
メールでのお問い合わせでも
1営業日以内にご連絡いたします。