Ben Marshall
Forum Replies Created
-
Forum: Plugins
In reply to: [Zero Spam for WordPress] Conflict with Cloudflare TurnstileThanks for the detailed report — this was a real bug and you nailed the root cause. We’ve fixed it in v5.7.8… soon to be released.
https://github.com/Highfivery/zero-spam-for-wordpress/pull/397The issue was that our disallowed words check was scanning every field in the form submission, including Cloudflare Turnstile’s
cf-turnstile-responsetoken — a 1,000+ character random string. With short blocklist entries like_ugg(only 4 characters), a match inside that random string was almost guaranteed.In v5.7.8, we now automatically skip security token fields like
cf-turnstile-response,g-recaptcha-response, andh-captcha-responseduring disallowed word checks. These fields are never user-typed content, so they should never have been scanned in the first place. We also added a developer filter (zerospam_excluded_fields) so any other CAPTCHA or token fields can be excluded too.On top of that, we added two new settings: “Allowed Words” (whitelist specific strings from the blocklist) and “Minimum Disallowed Word Length” (skip those tiny 3-4 character entries that cause the most trouble). You should now be able to safely enable the splorp blocklist check alongside Cloudflare Turnstile without any conflicts.
Please update and let us know if everything works as expected — we’re here if anything comes up!
Also, if you get a chance, a quick review of the plugin on WordPress.org would mean a lot to us. Hearing from users like you is what keeps us motivated to keep improving the plugin and squashing issues fast. Thanks!
Thanks for reaching out and for the great suggestion! We’ve reviewed this and shipped a fix in v5.7.8 that addresses exactly what you described… soon to be released.
https://github.com/Highfivery/zero-spam-for-wordpress/pull/397We added a new “Allowed Words” setting (under Settings > Zero Spam) where you can list specific words or strings — one per line — that should never be flagged as spam, even if they appear in the splorp blocklist. So if your email address or domain contains something like “ugg” or “cash” that happens to be on the list, just add that string to Allowed Words and it will be skipped during validation. This works across all form types (CF7, Gravity Forms, WPForms, Formidable, Fluent Forms) and WordPress comments.
We also added a “Minimum Disallowed Word Length” setting that lets you skip very short blocklist entries entirely — those 3-4 character strings tend to cause the most false positives.
Please update to v5.7.8 and let us know if you run into any issues — we’re happy to help!
If you have a moment, we’d really appreciate it if you could leave a quick review of the plugin on WordPress.org. It goes a long way in keeping us motivated to continue developing new features and quickly addressing issues like this. Thank you!
Forum: Plugins
In reply to: [Zero Spam for WordPress] 403 resonsesHi, thanks for reporting this — you’ve found a legitimate bug.
What’s happening: The David Walsh module includes an AJAX key-refresh mechanism designed specifically for cached pages. When a visitor loads a cached page where the embedded key is older than 12 hours, the JavaScript fetches a fresh key from
/wp-json/zero-spam/v5/davidwalsh-key. The endpoint itself is intentionally public (permission_callback => '__return_true'), so it should work fine for non-logged-in visitors.However, the AJAX request was also sending an
X-WP-Nonceheader with a nonce that was generated when the page was originally rendered. On cached pages, that nonce is stale by the time visitors load the page. WordPress core’srest_cookie_check_errors()sees the invalid nonce and returns a 403 before the public permission callback is ever evaluated — which is why you’re seeing those 403 entries in your access logs.The fix: We’ve removed the unnecessary nonce header from the AJAX request. Since the endpoint is public by design (the key is already visible in the page HTML and is only useful with JavaScript execution), no authentication is needed. This fix will be included in v5.7.7.
In the meantime, the 403s are harmless to your visitors — the JavaScript gracefully falls back to the key already embedded in the cached page HTML. Form submissions will still work as long as that embedded key hasn’t rotated out (the plugin accepts both the current and previous key to handle this). So your visitors aren’t being blocked from submitting forms; they’re just generating unnecessary 403 log noise.
If you have a moment, we’d really appreciate it if you could leave a review on the WordPress plugin page. It helps us continue improving the plugin and honestly keeps us motivated to keep building it. Thanks!
Forum: Plugins
In reply to: [Zero Spam for WordPress] Project HoneypotThanks for the feedback, both points are valid and we’ll improve the plugin’s UI to address them.
1) Missing link to Project Honeypot You’re right, we should be linking directly to projecthoneypot.org from the settings section. We’ll add that.
2) Finding your access key The key you need is the HTTP:BL Access Key — so yes, the “BL Access Key” you found is exactly what goes into the Zero Spam settings. Here’s how to find it:
- Log in at projecthoneypot.org
- Go to HTTP:BL Configuration (or navigate to Services → HTTP:BL from your dashboard)
- Your access key is displayed at the top — it’s a 12-character alphanumeric string
- Paste that key into the Access Key field in Zero Spam’s Project Honeypot settings
We’ll update the plugin description to make this clearer and include a direct link to the HTTP:BL configuration page.
If you have a moment, we’d really appreciate it if you could leave a review for Zero Spam on WordPress.org. Reviews help us reach more users, keep us motivated, and allow us to continue improving the plugin. Your feedback, whether it’s a feature request, a bug report, or just a thumbs up, makes a real difference. Thank you for your support!
Forum: Plugins
In reply to: [Zero Spam for WordPress] Few QuestionsGood catch — thanks for reporting this. The issue was caused by a docblock annotation we added to the
setcommand that inadvertently restricted which flags WP-CLI would accept. We’ve removed it so the command works generically again:wp zerospam set --stop_forum_spam=enabledThis will be included in a patch release shortly.
Forum: Plugins
In reply to: [Zero Spam for WordPress] Few QuestionsHey! Thank you for the detailed bug report — all three issues have been confirmed, diagnosed, and fixed in v5.7.5.
Issue 1: Gravity Forms not blocking emails from blocked domains (e.g., jmailservice.com) This was a missing feature — Gravity Forms submissions were only checked against the honeypot and David Walsh techniques, but never validated against the blocked email domains list. v5.7.5 now iterates all submitted form fields and checks any email addresses against your blocked domains list. You’ll find a new “Check Blocked Email Domains” toggle in the Gravity Forms settings section. We also added this same check to Contact Form 7 and Formidable Forms for consistency.
Issue 2:
wp zerospam set --regenerate_honeypotnot working The honeypot regeneration is an action, not a storable setting — thesetcommand was just saving the flag text as a value rather than actually regenerating the honeypot key. This has been fixed in two ways:wp zerospam set --regenerate_honeypotnow correctly regenerates the honeypot key- A new dedicated command is also available:
wp zerospam regenerate-honeypot
Issue 3:
wp zerospam set --blocked_email_domains="..."not working There was a storage mismatch — the CLI was writing the domains to the wrong option key, so the plugin never read them back. This has been fixed, and there’s also a new dedicated command with more flexibility:wp zerospam update-blocked-domains --domains="domain1.com,domain2.com" wp zerospam update-blocked-domains --file=/path/to/domains.txt wp zerospam update-blocked-domains --recommended wp zerospam update-blocked-domains --domains="newdomain.com" --appendAdditionally, this release includes security hardening for SQL injection prevention in database queries, a fix for an inverted email validation check in Fluent Forms, and new disallowed word checking across all form modules.
Please update to v5.7.5 and let us know if you run into any further issues. If you have a moment, we’d really appreciate a review on WordPress.org — it goes a long way in keeping us motivated to continue improving the plugin.
Forum: Plugins
In reply to: [Zero Spam for WordPress] Client IP’s BlockedThank you for reaching out!
Why Users Are Being BlockedZero Spam uses multiple mechanisms that can block users from accessing your entire website:
1. Manual IP/Location Blocks
You or another administrator may have manually blocked:
- Specific IP addresses
- Entire countries
- Regions/states
- Cities
- ZIP/postal codes
2. Enhanced Protection (Zero Spam API)
If you have a license key configured, this service checks visitor IPs against a spam database. Users are blocked when their IP has a “confidence score” of 30% or higher (default setting). This is the most common cause, especially those using VPNs or Tor.
3. Stop Forum Spam
This free service checks if visitor IPs appear in their spam database. Users are blocked when their IP has a confidence score of 50% or higher (default setting).
4. Project Honeypot
If you’ve configured an access key, this service checks IP threat scores. Users are blocked when their threat score is 50 or higher (default setting).Why Tor/VPN Users Get Blocked
This is expected behavior. Tor exit nodes and VPN IP addresses are:
- Shared by thousands of users worldwide
- Frequently used for spam and malicious activity
- Commonly listed in spam databases
When you tested with Brave browser using Tor, you experienced this firsthand.
How to Resolve This Issue
Step 1: Identify What’s Blocking Users
Go to WordPress Admin → Dashboard → Zero Spam → Log
This shows you:
- Which IP addresses are being blocked
- The exact reason for each block (e.g., “High Confidence Score: 95%”, “blocked_country_code”, “Stop Forum Spam”)
- When the blocks occurred
Step 2: Whitelist Trusted IP Addresses
If you know certain IPs belong to legitimate users:
- Go to Settings → Zero Spam → General
- Find the IP Whitelist field
- Add trusted IP addresses (one per line)
- Save changes
Important: Whitelisted IPs bypass ALL security checks, so only add IPs you completely trust.Step 3: Adjust Detection Sensitivity
Here’s how to make things lenient:
Enhanced Protection (if enabled):
- Go to Settings → Zero Spam → Enhanced Protection
- Change Confidence Minimum from 30% to 60-70%
- Higher numbers = fewer blocks, but potentially more spam
Stop Forum Spam (if enabled):
- Go to Settings → Zero Spam → Stop Forum Spam
- Change Confidence Minimum from 50% to 70-80%
Project Honeypot (if enabled):
- Go to Settings → Zero Spam → Project Honeypot
- Change Threat Score Minimum from 50 to 100-150
Step 4: Remove Manual Blocks
- Go to Dashboard → Zero Spam → Blocked
- Check the IPs tab – remove any IP addresses that shouldn’t be blocked
- Check the Locations tab – remove any geographic blocks (countries, regions, cities, ZIPs)
Step 5: Set Up Emergency Access
To prevent being locked out yourself, add this to your wp-config.php
define('ZEROSPAM_RESCUE_KEY', 'your-secret-key-here');Replace
your-secret-key-herewith any random string. If you ever get blocked, access your site with:
https://yoursite.com/?zerospam_rescue=your-secret-key-here
Recommended Settings to Reduce False Positives
Based on your situation, I recommend:
- Enhanced Protection Confidence: 60% (instead of 30%)
- Stop Forum Spam Confidence: 70% (instead of 50%)
- Project Honeypot Threat Score: 100 (instead of 50%)
- Geographic Blocking: Only block specific high-risk countries if absolutely necessary
- IP Whitelist: Add your own IP and any known legitimate user IPs
What About Tor/VPN Users?
You have three options:
- Accept the limitation – Most legitimate users don’t browse via Tor. This may be acceptable for your use case.
- Reduce sensitivity significantly – Set all thresholds to 70%+ or disable IP reputation checks entirely. This will allow more Tor/VPN users through, but may also allow more spam.
- Disable IP-based blocking – Turn off Enhanced Protection, Stop Forum Spam, and Project Honeypot entirely. Rely only on form-level protection (the plugin has other techniques that don’t block site access).
The key is finding the right balance between security and accessibility for your specific audience and needs.
We’d greatly appreciate it if you could leave us a review on WordPress.org!
Forum: Plugins
In reply to: [Zero Spam for WordPress] Changing Network Settings email notificationsThank you so much for reporting this issue! You were absolutely right – the email notification system was sending thousands of emails when network settings changed, causing server resource issues and email provider alerts.
We’ve just released v5.7.3 which completely resolves this problem.
You now have independent control over email notifications in Network Admin → Settings → Zero Spam Network → Notifications tab:
- Weekly Summary Emails – Keep these if you want weekly reports
- Settings Change Notifications – Disable this to stop the email flood
Simply uncheck “Settings Change Notifications” and you won’t receive thousands of emails anymore when changing network-level settings.
Please update and let us know if this resolves your issue!
If this solves your problem, we’d really appreciate a review – it helps us continue developing features based on user feedback like yours.
Thanks again for bringing this to our attention!
Forum: Plugins
In reply to: [Zero Spam for WordPress] How to disable the email reports?Thanks for the idea! We’d really appreciate it if you could take a moment to leave us a review! Your feedback helps us continue improving the plugin and helps other users discover it.
Forum: Plugins
In reply to: [Zero Spam for WordPress] How to disable the email reports?Thank you so much for reaching out and for pointing this out! You’re absolutely right that this should be easier to control.
How to Disable It Now
Currently, you can disable the weekly summary emails using one of these methods:
Option 1: WP-CLI (Recommended)wp site option update zerospam_network_notifications_enabled false --networkOption
Option 2: Add to wp-config.php
Add this code to yourwp-config.phpfile:// Disable Zero Spam weekly summary emails
add_action('plugins_loaded', function() {
if (is_multisite()) {
update_site_option('zerospam_network_notifications_enabled', false);
}
}, 1);
Option 3: Unschedule the Cron Event
Add this to your theme’sfunctions.phpor a custom plugin:// Unschedule Zero Spam weekly summary
add_action(‘init’, function() {
$timestamp = wp_next_scheduled(‘zerospam_network_weekly_summary’);
if ($timestamp) {
wp_unschedule_event($timestamp, ‘zerospam_network_weekly_summary’);
}
});
Great News! 🎉
Thanks to your feedback, version 5.7.2 (coming soon) will include a brand new Notifications tab in the Network Settings page where you can easily toggle weekly summary emails on or off with a simple checkbox—no code required!To access it in v5.7.2:
- Navigate to Network Admin → Settings → Zero Spam Network
- Click the Notifications tab
- Toggle “Enable weekly summary emails” on or off
- Click Save Settings
If you’re finding Zero Spam helpful for protecting your network, we’d really appreciate it if you could take a moment to leave us a review! Your feedback helps us continue improving the plugin and helps other users discover it.
Thanks again for bringing this to our attention, your input directly led to this improvement!
Forum: Plugins
In reply to: [Zero Spam for WordPress] IPinfo API callThanks for the detailed report and for putting together a suggested implementation, super helpful.
You’re exactly right: the current integration uses IPinfo’s Legacy endpoint (ipinfo.io/{ip}), which is capped at 50,000 requests/month on the free tier and can lead to widespread 429 “Quota Exceeded” responses once that limit is hit.
We’ve updated the IPinfo module to use the Lite API endpoint instead (api.ipinfo.io/lite/{ip}?token=…), which is the unlimited option for authenticated free-tier tokens. We also added persistent caching to reduce API calls further, and removed the vendor dependency in favor of the native WordPress HTTP API.
This change will be included in v5.7.2.
Also, if you have a minute, we’d really appreciate a quick review on WordPress.org, it helps a ton with visibility and lets other site owners know the plugin is actively maintained.
Thanks again, we’re always here to help. Just reply if you have any questions.
Forum: Plugins
In reply to: [Zero Spam for WordPress] Suddenly getting errorsThanks for reporting this! We identified the issue causing those PHP warnings and have released a fix in version 5.7.1.
Please update to the latest version and let us know if you run into any other trouble.
If you have a quick moment, we’d really appreciate a plugin review.
Cheers!
Forum: Plugins
In reply to: [Zero Spam for WordPress] License notice showing incorrectlyThanks for reporting this. Version 5.6.2 has just been released with the fix. Update the plugin and the issue should be resolved.
If you still see problems after updating, email us directly at info @ zerospam.org for quicker responses so we can help determine your specific issue.
If you have a moment and find Zero Spam helpful, we’d appreciate a review on WordPress.org. For even stronger protection with priority support, check out our Enhanced Protection subscription.
Thanks for using Zero Spam.
Forum: Plugins
In reply to: [Zero Spam for WordPress] From few days it block login pageThank you for reaching out regarding the login page blocking issue. I understand how frustrating it can be when you’re unexpectedly blocked from your own website.
Understanding the “IP flagged as spam/malicious” message:
This message can appear for several reasons, and in most cases, it’s actually a legitimate security response rather than a plugin error. The Zero Spam plugin uses multiple layers of protection to keep your site secure, and sometimes legitimate users can trigger these protections.
Common causes and how to resolve:
1. Check your site’s Zero Spam Log (Admin Dashboard → Zero Spam → Log):
– Look for your blocked login attempt
– Check the “Failed” column to see the specific reason
– This will tell you exactly which protection triggered the block2. Whitelist your IP address (Settings → Zero Spam → Settings):
– Scroll to “IP Whitelist”
– Add your IP address (one per line)
– Save settings
– This ensures you’ll never be blocked again3. Check if you’re manually blocked (Dashboard → Zero Spam → Blocked):
– Search for your IP address
– If found, click to remove the block
– Your IP may have been previously flagged and added to the blocked list4. Verify third-party protection services:
– The plugin integrates with Zero Spam Enhanced Protection, Stop Forum Spam, and Project Honeypot
– These services maintain global databases of suspicious IPs
– If you’re on a shared network, VPN, or your ISP recently changed your IP, you might be temporarily flagged
– You can adjust the “Confidence Minimum” thresholds in each service’s settings to reduce false positives5. JavaScript-based protection (David Walsh technique):
– Go to Settings → Zero Spam → David Walsh
– Verify the protection is working correctly
– If you have JavaScript disabled, use browser privacy tools, or have aggressive ad blockers, this can cause false positives
– You can temporarily disable this protection to testNeed more help?
For faster, personalized support, please email us directly at info@zerospam.org with:
- Your website URL
- Your IP address (you can find this at https://whatismyipaddress.com/)
- The exact error message you’re seeing
- Details from your Zero Spam Log (if accessible)
This will allow us to investigate your specific situation and provide targeted assistance.
Consider Zero Spam Enhanced Protection:
If you haven’t already, I’d encourage you to check out our Enhanced Protection subscription. Subscribers receive:
- Priority support for faster issue resolution
- Access to our advanced real-time IP reputation network
- Enhanced detection accuracy with lower false positives
- Direct assistance from our security team
Plugin Review:
We noticed you may not have left a review yet. If Zero Spam has been protecting your site effectively, we’d really appreciate if you could leave us a 5-star review. Your feedback helps other WordPress users discover reliable security solutions!
P.S. The good news is that if you’re being blocked, it means the plugin is actively working to protect your site! Once we identify why you’re being blocked, we can easily whitelist you while maintaining security for your site.
Forum: Plugins
In reply to: [Zero Spam for WordPress] How does this interact with WooCommerce?Great question! When you enable the WooCommerce registration protection, it applies to both:
- The standalone registration form (e.g., on the My Account page)
- Account creation during checkout (when a customer checks “Create an account?”)
The protection uses non-intrusive methods like honeypot fields and JavaScript validation that are invisible to legitimate customers—so there’s no need to worry about it interfering with your checkout process. Real customers completing purchases normally won’t be affected.
If you’d like extra peace of mind, you can enable the “Log Blocked Registrations” option in the WooCommerce settings section. This will let you monitor any blocked attempts and ensure there are no false positives on your site.
Let me know if you have any other questions!