{"id":348012,"date":"2026-08-09T13:00:17","date_gmt":"2026-08-09T13:00:17","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/edz-honeypot-timing-guard\/"},"modified":"2026-10-23T09:15:59","modified_gmt":"2026-10-23T09:15:59","slug":"edznet-honeypot-timing-guard","status":"publish","type":"plugin","link":"https:\/\/ru.wordpress.org\/plugins\/edznet-honeypot-timing-guard\/","author":15222233,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.1.2","stable_tag":"1.1.2","tested":"7.1.3","requires":"5.6","requires_php":"7.2","requires_plugins":null,"header_name":"EDZNET Honeypot & Timing Guard","header_author":"EDZNET","header_description":"Adds a hidden honeypot field and a minimum-submit-time check to every Contact Form 7 form. Submissions that fill the decoy or arrive too fast are flagged as spam and never mailed.","assets_banners_color":"","last_updated":"2026-10-23 09:15:59","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/edznet.dev\/","header_plugin_uri":"https:\/\/edznet.dev\/","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":20,"downloads":361,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.1.0":{"tag":"1.1.0","author":"edznet","date":"2026-08-09 13:00:07","revision":3639376},"1.1.1":{"tag":"1.1.1","author":"edznet","date":"2026-08-24 12:35:17","revision":3663437},"1.1.2":{"tag":"1.1.2","author":"edznet","date":"2026-10-23 09:15:59","revision":3761265}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3639376,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3639376,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256},"icon.svg":{"filename":"icon.svg","revision":3639376,"resolution":false,"location":"assets","locale":false}},"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.1.0","1.1.1","1.1.2"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[5445,1152,598,599,274910],"plugin_category":[42,54],"plugin_contributors":[273682],"plugin_business_model":[],"class_list":["post-348012","plugin","type-plugin","status-publish","hentry","plugin_tags-cf7","plugin_tags-contact-form-7","plugin_tags-honeypot","plugin_tags-spam","plugin_tags-timing-guard","plugin_category-contact-forms","plugin_category-security-and-spam-protection","plugin_contributors-edznet","plugin_committers-edznet"],"banners":[],"icons":{"svg":"https:\/\/ps.w.org\/edznet-honeypot-timing-guard\/assets\/icon.svg?rev=3639376","icon":"https:\/\/ps.w.org\/edznet-honeypot-timing-guard\/assets\/icon.svg?rev=3639376","icon_2x":false,"generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>EDZNET Honeypot &amp; Timing Guard protects Contact Form 7 forms from bot submissions using three complementary techniques:<\/p>\n\n<h3>Honeypot<\/h3>\n\n<p>A real text input is rendered off-screen (hidden via CSS positioning, not display:none). Bots that fill in visible form fields will often fill this one too, while human visitors never see it.<\/p>\n\n<h3>Timing Guard<\/h3>\n\n<p>A signed timestamp is injected into each form. Submissions arriving faster than the configured minimum time (default: 3 seconds) are rejected as bots. The timestamp is HMAC-signed with your site's secret key, preventing tampering.<\/p>\n\n<h3>Gibberish Content Detection<\/h3>\n\n<p>The plugin analyses the message, subject and comment fields (<code>your-message<\/code>, <code>your-subject<\/code>, <code>message<\/code>, <code>subject<\/code>, <code>comments<\/code>, <code>comment<\/code> \u2014 customisable with the <code>edz_hp_gibberish_fields<\/code> filter) for random-looking content \u2014 long character strings without spaces, words mixing letters and digits, or vowel-less letter sequences. Bots that fill forms with random noise are caught here. Messages written in languages without spaces between words, such as Chinese, Japanese or Thai, are not treated as random strings.<\/p>\n\n<p>When spam is detected, CF7 silently drops the mail and logs the reason to its spam log.<\/p>\n\n<p>No configuration required \u2014 just install and activate.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>edznet-honeypot-timing-guard<\/code> folder to <code>\/wp-content\/plugins\/<\/code>.<\/li>\n<li>Activate the plugin through the Plugins screen in WordPress.<\/li>\n<li>Contact Form 7 forms are now protected.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"can%20i%20change%20the%20minimum%20submit%20time%3F\"><h3>Can I change the minimum submit time?<\/h3><\/dt>\n<dd><p>Yes. Add this to your theme's <code>functions.php<\/code>:<\/p>\n\n<pre><code>add_filter( 'edz_hp_min_seconds', fn() =&gt; 5 );\n<\/code><\/pre><\/dd>\n<dt id=\"can%20i%20require%20the%20timestamp%20field%3F\"><h3>Can I require the timestamp field?<\/h3><\/dt>\n<dd><p>By default, forms cached before the plugin was activated won't have a timestamp. Set the filter to <code>true<\/code> once your cache has rolled over:<\/p>\n\n<pre><code>add_filter( 'edz_hp_require_timestamp', '__return_true' );\n<\/code><\/pre><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.1.2<\/h4>\n\n<ul>\n<li>Fix: genuine messages written in Chinese, Japanese, Thai or other scripts that don't put spaces between words were flagged as gibberish spam once they were longer than about 25 characters. The \"long string without spaces\" checks now only apply to Latin-alphabet (ASCII) text, which is what spam bots send.<\/li>\n<li>Tweak: the honeypot's hiding stylesheet is only added to pages when Contact Form 7 is active.<\/li>\n<li>Readme: the gibberish check description now lists exactly which fields are analysed.<\/li>\n<\/ul>\n\n<h4>1.1.1<\/h4>\n\n<ul>\n<li>Bumped Tested up to: 7.1 for WordPress 7.1 compatibility. No functional changes.<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Added gibberish content detection: flags message\/subject fields containing random-looking text (long random strings, mixed letters &amp; digits, vowel-less sequences).<\/li>\n<li>Added <code>edz_hp_check_gibberish<\/code> filter to disable the gibberish check (<code>add_filter( 'edz_hp_check_gibberish', '__return_false' )<\/code>).<\/li>\n<li>Added <code>edz_hp_gibberish_fields<\/code> filter to customize which fields are checked.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<\/ul>","raw_excerpt":"Adds a hidden honeypot field, a minimum-submit-time check, and content gibberish detection to every Contact Form 7 form. No configuration needed.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/ru.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/348012","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ru.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/ru.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/ru.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=348012"}],"author":[{"embeddable":true,"href":"https:\/\/ru.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/edznet"}],"wp:attachment":[{"href":"https:\/\/ru.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=348012"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/ru.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=348012"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/ru.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=348012"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/ru.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=348012"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/ru.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=348012"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/ru.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=348012"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}