お問い合わせフォームで、「確認のためにもう一度入力してください」といったように、メールアドレスを2回入力してもらうための方法をご紹介いたします。2回入力したメールアドレスが一致していないと、エラーが表示されるようにします。
フォーム用のプラグインには、Contact Form 7を利用します。
Contact Form 7のフォームに確認用メールアドレスの項目を追加する方法
まずは、適用しているテーマのfunctions.phpに以下コードを追加します。コピペでOKです。
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側では、以下の項目を追加します。
[email* your-email] [email* your-email-confirm]
「your-email」が1回目のメールアドレス入力フォームで、「your-email-confirm」が2回目の確認用メールアドレスの入力フォームです。
メールアドレスの入力が一致しない場合は、以下のようにエラーメッセージが表示されます。
あとがき
お問い合わせをする側からしてみれば、メールアドレスを2回入力するのは手間ですが、メールアドレスの打ち間違いを防ぐ効果があります。
電話での対応はしていない場合など、メールアドレスを間違えられると困るケースでぜひご活用ください。