お問い合わせフォームで、「確認のためにもう一度入力してください」といったように、メールアドレスを2回入力してもらうための方法をご紹介いたします。2回入力したメールアドレスが一致していないと、エラーが表示されるようにします。
フォーム用のプラグインには、Contact Form 7を利用します。
Contact Form 7のフォームに確認用メールアドレスの項目を追加する方法
まずは、適用しているテーマのfunctions.phpに以下コードを追加します。コピペでOKです。
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 | function wpcf7_text_validation_filter_extend( $result , $tag ) { global $my_email_confirm ; $tag = new WPCF7_Shortcode( $tag ); $name = $tag ->name; $value = isset( $_POST [ $name ] ) ? trim( wp_unslash( strtr ( (string) $_POST [ $name ], "\n" , " " ) ) ): '' ; if ( $name == "your-email" ){ $my_email_confirm = $value ; } if ( $name == "your-email-confirm" && $my_email_confirm != $value ){ $result ->invalidate( $tag , "確認用のメールアドレスが一致していません" ); } return $result ; } add_filter( 'wpcf7_validate_email' , 'wpcf7_text_validation_filter_extend' , 11, 2 ); add_filter( 'wpcf7_validate_email*' , 'wpcf7_text_validation_filter_extend' , 11, 2 ); |
メールアドレスが一致しない場合のメッセージを変更したい時は、「確認用のメールアドレスが一致していません」の部分を変更してください。
続いて、Contact Form 7側では、以下の項目を追加します。
1 2 | [email* your-email] [email* your-email-confirm] |
「your-email」が1回目のメールアドレス入力フォームで、「your-email-confirm」が2回目の確認用メールアドレスの入力フォームです。
メールアドレスの入力が一致しない場合は、以下のようにエラーメッセージが表示されます。
あとがき
お問い合わせをする側からしてみれば、メールアドレスを2回入力するのは手間ですが、メールアドレスの打ち間違いを防ぐ効果があります。
電話での対応はしていない場合など、メールアドレスを間違えられると困るケースでぜひご活用ください。