Add a confirm email field to Contact Form 7.
As of April 2026, Contact Form 7 Confirm Email Field is a WordPress form plugin with 2.0K+ active installations and a 4.3/5 rating from 6 reviews. It has been downloaded 17K+ times in total. Requires WordPress 3.8+ and PHP false+. Available on WordPress.org since 2015. Last updated 10 years ago — may have compatibility concerns. Downloads are up 22% this week. Top alternative: MC4WP: Mailchimp for WordPress.
This “Contact Form 7 confirm email field” plugin extends the “Contact Form 7” plugin to verify email address which is entered second time.
confirm email field for Contact Form 7 add the double check email field to your form and verify email match with the CF7 Ajax validation.
This plugin add a new field in Contact Form 7 called “confirm_email” that allow to do a double email check when submitting the form. The new field will ask to users to confirm their email by typing it into a second field.
If you want to do this in your form, you only have to add the “confirm_email” field into the CF7 form and enter the email field name you want to check. The validation is done by the CF7 Ajax-powered style: when submitting form CF7 wi…
I generated the tag using the email name field to check for a match and it will not work. Every form submission with unmatched email addresses went through with no errors. I tried tweaking the tag to see if it can be resolved but it doesn’t work. Not sure why it wont work but I will have to deactivate this plugin and delete it.
I really like this very efficient and easy plugin.
Some code should be added to get the full features :
– A RED text saying that the email is wrongly written.
– Style completely similar to the email field of CF7.
Hope this helps ! And thank you to Author to adapt his code more or less as described, or better…
(Code bellow is partially given by KliffBlack)
———————————————————-
———- Here is the code and where to put it ———-
———————————————————-
<<<< Getting the message about wrong match >>>>
1. Open the php file
–> Named : contact-form-7-confirm-email.php
–> In folder : […]wp-content/plugins/contact-form-7-confirm-email-feild (yes, f e i l d, this is a typo from the author of the plug in)
2. Add the filter:
–> What : add_filter( ‘wpcf7_messages’, ‘confirm_email_messages’);
–> Where : at line 24 (for example, must be with the others)
3. Add the function it refers to :
–> What :
//add error message
function confirm_email_messages($messages) {
$messages[‘invalid_confirm_email’] = array(
‘description’ => __(‘The email addresses do not match.’),
‘default’ => __(‘The email addresses do not match.’),
);
return $messages;
}
–> Where : at line 109 (for example, must be outside an existing function.
<<<< Making the confirm_email input field look like the email one >>>>
What : $class .= ‘ ‘.wpcf7_form_controls_class( $tag->type, ‘wpcf7-text’ );
Where : at line 50
I submitted below comment on an open support request that is about 2 months old:
This seems like it would be a really nice plugin if the author would maintain/fix it. I am NOT a coder, but I waded into this because I really think this sort of validation is valuable.
I found the comment by aswitahidayat to be correct. There was no message in the code for invalid_confirm_email. Digging back into a much older support thread, I found this:
add_filter( ‘wpcf7_messages’, ‘confirm_email_messages’);
function confirm_email_messages($messages) {
$messages[‘invalid_confirm_email’] = array(
‘description’ => __(‘The email addresses do not match.’),
‘default’ => __(‘The email addresses do not match.’),
);
return $messages;
}
After some fiddling around, I determined where to insert the “add_filter…” and “function…” pieces. Plugin seems to work now with WPv4.5.2. What I don’t understand is why the author says he fixed this some 8 months ago, but the above fix is not in the plugin I installed today. And the same problem is reported 2 months ago.
I would love to up this rating to 5-stars, and I will if I become convinced that the author is properly responding to issues and committing fixes he says in support are done, but in fact are NOT in the plugin when downloaded.
Thanks
Nice little plugin!
| WordPress | 3.8+ requiredTested up to 4.3.34 |
| PHP | false+ required |
1.2 – 18/08/2015
Plugin data sourced from WordPress.org. Analysis and metrics by PluginSift.