The principle of a honeypot is simple — bots are stupid. While some spam is hand-delivered, the vast majority is submitted by bots scripted in a specific (wide-scope) way to submit spam to the largest number of form types. In this way they somewhat blindly fill in fields, irregardless of whether the field should be filled in or not. This is how a honeypot catches the bot — it introduces an additional field in the form that if filled out will cause the form not to validate.
Please use the official CF7 Honeypot support forum for all support requests. Support requests in comments may not be answered. Also — before submitting a support request, be sure to confirm you are using the latest versions of: 1) Contact Form 7 WordPress Plugin, 2) The Contact Form 7 plugin, 3) WordPress.
- Install using WordPress’ “Add Plugin” feature — just search for “Contact Form 7 Honeypot”
- Activate the plugin
- Edit a form in Contact Form 7
- Choose “Honeypot” from the Generate Tag dropdown. Recommended: change the honeypot element’s ID.
- Insert the generated tag anywhere in your form. The added field uses inline CSS styles to hide the field from your visitors.
The fine folks at RoseApple Media put the above video together detailing the simple process of getting up and running with CF7 Honeypot.
Should you wish to, you can change the outputted Honeypot HTML by using the wpcf7_honeypot_html_output filter.
Frequently Asked Questions
Will this module stop all my contact form spam?
Probably not. But it should reduce it to a level whereby you don’t require any additonal spam challenges (CAPTCHA, math questions, etc.).
Are honeypots better than CAPTCHAs?
This largely depends on the quality of the CAPTCHA. Unfortunately the more difficult a CAPTCHA is to break, the more user-unfriendly it is. This honeypot module was created because we don’t like CAPTCHA’s cluttering up our forms. Our recommendation is to try this module first, and if you find that it doesn’t stop enough spam, then employ more challenging anti-spam techniques.
Can I modify the HTML this plugin outputs?
Yep! New in version 1.5 of the plugin you’re able to adjust the HTML by hooking the output filter for the plugin. See the Installation section for more details.
What is the plugin license?
This plugin is released under a GPL license.
Small change to accommodate validation changes made in CF7 4.1.
Small change to accommodate changes made in CF7 3.9.
Quite a lot of code clean-up. This shouldn’t result in any changes to the regular output, but it’s worth checking your forms after updating. Also, you’ll note that you now have the ability to add a custom CLASS and ID attributes when generating the Honeypot shortcode (in the CF7 form editor).
Added filter hook for greater extensibility. See installation section for more details.
Update to make compatible with WordPress 3.8 and CF7 3.6. Solves problem of unrendered honeypot shortcode appearing on contact forms.
Update to improve outputted HTML for better standards compliance when the same form appears multiple times on the same page.
Small update to add better i18n and WPML compatibility.
Small update for W3C compliance. Thanks Jeff.