{"id":121953,"date":"2020-05-20T20:34:00","date_gmt":"2020-05-20T20:34:00","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/contact-form-zero\/"},"modified":"2026-01-21T13:39:14","modified_gmt":"2026-01-21T13:39:14","slug":"contact-form-zero","status":"publish","type":"plugin","link":"https:\/\/kmr.wordpress.org\/plugins\/contact-form-zero\/","author":23361022,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.5","stable_tag":"trunk","tested":"6.8.5","requires":"5.0","requires_php":"","requires_plugins":null,"header_name":"Contact Form Zero","header_author":"Web Guy","header_description":"Add a stupidly simple contact form to your website with this shortcode: [contact-form-zero].","assets_banners_color":"40383e","last_updated":"2026-01-21 13:39:14","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/webguy.io\/donate","header_plugin_uri":"","header_author_uri":"https:\/\/webguy.io\/","rating":5,"author_block_rating":0,"active_installs":30,"downloads":2261,"num_ratings":1,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":[],"upgrade_notice":[],"ratings":{"1":0,"2":0,"3":0,"4":0,"5":"1"},"assets_icons":{"icon-128x128.jpg":{"filename":"icon-128x128.jpg","revision":2309112,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.jpg":{"filename":"icon-256x256.jpg","revision":2309112,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.jpg":{"filename":"banner-1544x500.jpg","revision":2309112,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.jpg":{"filename":"banner-772x250.jpg","revision":2309112,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":[],"block_files":[],"assets_screenshots":[],"screenshots":[],"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[2656,358,267,108,5055],"plugin_category":[41,42,43],"plugin_contributors":[247167],"plugin_business_model":[],"class_list":["post-121953","plugin","type-plugin","status-publish","hentry","plugin_tags-anti-spam","plugin_tags-contact-form","plugin_tags-email","plugin_tags-feedback","plugin_tags-quote","plugin_category-communication","plugin_category-contact-forms","plugin_category-customization","plugin_contributors-webguyio","plugin_committers-webguyio","plugin_support_reps-johnmarty"],"banners":{"banner":"https:\/\/ps.w.org\/contact-form-zero\/assets\/banner-772x250.jpg?rev=2309112","banner_2x":"https:\/\/ps.w.org\/contact-form-zero\/assets\/banner-1544x500.jpg?rev=2309112","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/contact-form-zero\/assets\/icon-128x128.jpg?rev=2309112","icon_2x":"https:\/\/ps.w.org\/contact-form-zero\/assets\/icon-256x256.jpg?rev=2309112","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p><a href=\"https:\/\/github.com\/webguyio\/support\">\ud83d\udcac Ask Question<\/a> | <a href=\"mailto:webguywork@gmail.com\">\ud83d\udce7 Email Me<\/a><\/p>\n\n<p><strong>Zero<\/strong> Difficulty. <strong>Zero<\/strong> Spam.<\/p>\n\n<p>Add a stupidly simple and lightweight contact form to your website in any page, post, or text widget with this shortcode:<\/p>\n\n<pre><code>[contact-form-zero]\n<\/code><\/pre>\n\n<p>The entire point of this plugin is to be completely hands-free, easy, and just work straight out-of-the-box. Simply plug and play without any required settings to adjust.<\/p>\n\n<p>If you're looking for the exact opposite of that, that is, a form you can custom build with advanced options, I recommend <a href=\"https:\/\/wordpress.org\/plugins\/contact-form-7\/\">Contact Form 7<\/a>.<\/p>\n\n<h3>Features<\/h3>\n\n<ul>\n<li>The most lightweight contact form plugin available for WordPress (no required settings to adjust or forms to create)<\/li>\n<li>Name, Email, Phone, and Message form fields (phone field is optional for your visitors)<\/li>\n<li>Automatically sends emails to the email address set under <em>Settings &gt; General &gt; Administration Email Address<\/em><\/li>\n<li>Highly effective and hidden anti-spam measures (no annoying CAPTCHAs required)<\/li>\n<li>Enable Google reCAPTCHA for additional protection if you like (usually no annoying CAPTCHAs required)<\/li>\n<li>Enable hCaptcha for additional protection if you like (CAPTCHAs required \u2014 only paid accounts for the hCaptcha service offer invisible options)<\/li>\n<li>Enable Cloudflare Turnstile for additional protection if you like (no annoying CAPTCHAs required)<\/li>\n<li>Enable Akismet for additional protection if you like (privacy implications)<\/li>\n<li>Fully compatible with all the protections of <a href=\"https:\/\/damspam.com\/\">Dam Spam<\/a> (fork of Stop Spammers)<\/li>\n<li>Easy to customize with CSS (please ask for help if you need it \u2014 I'm happy to write custom code for you to copy\/paste)<\/li>\n<\/ul>\n\n<h3>Optional Shortcode Attributes<\/h3>\n\n<pre><code>[contact-form-zero email=\"email@example.com\"] \u2014 Set a custom email address for form submissions to be sent to.\n\n[contact-form-zero accent=\"#000\"] \u2014 Change the accent color for the form.\n\n[contact-form-zero unstyled=\"yes\"] \u2014 Form is left naked for you or your theme to style.\n\n[contact-form-zero custom-1=\"FIELD NAME HERE\" custom-2=\"FIELD NAME HERE*\"] \u2014 Add as many custom text fields as you like and use * to make it required.\n\n[contact-form-zero g-key=\"SITE KEY HERE\" g-secret=\"SECRET KEY HERE\"] \u2014 Add your API keys (google.com\/recaptcha\/admin\/create) to enable Google reCAPTCHA.\n\n[contact-form-zero h-key=\"SITE KEY HERE\" h-secret=\"SECRET KEY HERE\"] \u2014 Add your API keys (dashboard.hcaptcha.com\/sites\/new) to enable hCaptcha.\n\n[contact-form-zero c-key=\"SITE KEY HERE\" c-secret=\"SECRET KEY HERE\"] \u2014 Add your API keys (dash.cloudflare.com\/?to=\/:account\/turnstile\/add) to enable Cloudflare Turnstile.\n\n[contact-form-zero akismet=\"yes\"] \u2014 Add your API key (akismet.com\/signup\/#personal) to the Akismet plugin settings to enable Akismet.\n<\/code><\/pre>\n\n<!--section=installation-->\n<p>There are no required settings to adjust. Simply use the <code>[contact-form-zero]<\/code> shortcode on any page, post, or text widget or in your theme code, use <code>&lt;?php echo do_shortcode( '[contact-form-zero]' ); ?&gt;<\/code>.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"why%20am%20i%20not%20receiving%20emails%3F\"><h3>Why am I not receiving emails?<\/h3><\/dt>\n<dd><p>I'm using the built-in <code>wp_mail<\/code> function. Most hosting environments (even shared hosts like Bluehost and GoDaddy) can handle email, but not very well out-of-the-box and require being optimized. It actually takes quite a bit of work to make sure your emails are deliverable. Some recommendations:<\/p>\n\n<ul>\n<li>Check that your SPF, DKIM, and other email records are set up correctly (<a href=\"https:\/\/www.mail-tester.com\/\">mail-tester.com<\/a> is a great all-around tool for checking and fixing common email deliverability issues)<\/li>\n<li>Even on shared hosts, you should be able to add a dedicated IP to your account for very cheap (which allows you to get away from shared IPs that have a bad reputation because your neighbors are spamming)<\/li>\n<li>If all else fails, you can abandon using your own server for mail altogether, and host offsite with a free or paid third-party service like Gmail or Mailgun (check out the <a href=\"https:\/\/wordpress.org\/plugins\/wp-mail-smtp\/\">WP Mail SMTP<\/a> plugin to go that route)<\/li>\n<\/ul><\/dd>\n<dt id=\"why%20is%20the%20captcha%20not%20appearing%20on%20my%20form%3F\"><h3>Why is the CAPTCHA not appearing on my form?<\/h3><\/dt>\n<dd><p>The modern versions of Google reCAPTCHA, hCaptcha, and Cloudflare Turnstile are relatively invisible. Be sure to send yourself a test message through your form.<\/p><\/dd>\n<dt id=\"how%27s%20the%20security%20and%20privacy%3F\"><h3>How's the security and privacy?<\/h3><\/dt>\n<dd><p>The security is rock-solid. By default, Contact Form Zero is completely private and GDPR-compliant. However, if you choose to enable Google reCAPTCHA, hCaptcha, Cloudflare Turnstile, or Akismet for your contact form, you may want to check their privacy policies.<\/p>\n\n<p>While Contact Form Zero can detect when Akismet is installed on your site, I've still made it explicitly opt-in only. If Akismet is enabled, every time someone uses the contact form, their IP will be sent to a third-party server.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.5<\/h4>\n\n<ul>\n<li>Added unlimited custom fields<\/li>\n<li>Added support for Akismet<\/li>\n<li>Added time-based spam protection<\/li>\n<li>Improved security<\/li>\n<\/ul>\n\n<h4>1.4.2<\/h4>\n\n<ul>\n<li>Improvements<\/li>\n<\/ul>\n\n<h4>1.4.1<\/h4>\n\n<ul>\n<li>Fixes<\/li>\n<\/ul>\n\n<h4>1.4<\/h4>\n\n<ul>\n<li>Added support for Cloudflare Turnstile<\/li>\n<\/ul>\n\n<h4>1.3<\/h4>\n\n<ul>\n<li>Added support for hCaptcha<\/li>\n<\/ul>\n\n<h4>1.2<\/h4>\n\n<ul>\n<li>Added support for Google reCAPTCHA<\/li>\n<\/ul>\n\n<h4>1.1<\/h4>\n\n<ul>\n<li>Minor code cleanup<\/li>\n<\/ul>\n\n<h4>1.0<\/h4>\n\n<ul>\n<li>Translation-ready<\/li>\n<li>Various improvements<\/li>\n<\/ul>\n\n<h4>0.7<\/h4>\n\n<ul>\n<li>Improved sanitization<\/li>\n<\/ul>\n\n<h4>0.6<\/h4>\n\n<ul>\n<li>Improved spam protection even more<\/li>\n<\/ul>\n\n<h4>0.5<\/h4>\n\n<ul>\n<li>Added optional shortcode attributes for customizing the form<\/li>\n<\/ul>\n\n<h4>0.4<\/h4>\n\n<ul>\n<li>Improved spam protection<\/li>\n<\/ul>\n\n<h4>0.3<\/h4>\n\n<ul>\n<li>PHP notice fix<\/li>\n<\/ul>\n\n<h4>0.2<\/h4>\n\n<ul>\n<li>Added placeholders for form fields<\/li>\n<\/ul>\n\n<h4>0.1<\/h4>\n\n<ul>\n<li>New<\/li>\n<\/ul>","raw_excerpt":"Add a stupidly simple and lightweight contact form to your website with [contact-form-zero].","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/kmr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/121953","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kmr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/kmr.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/kmr.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=121953"}],"author":[{"embeddable":true,"href":"https:\/\/kmr.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/webguyio"}],"wp:attachment":[{"href":"https:\/\/kmr.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=121953"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/kmr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=121953"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/kmr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=121953"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/kmr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=121953"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/kmr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=121953"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/kmr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=121953"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}