Title: Booker Privacy Spam Guard
Author: booker GmbH
Published: <strong>27 juillet 2026</strong>
Last modified: 27 juillet 2026

---

Recherche d’extensions

![](https://ps.w.org/booker-privacy-spam-guard/assets/icon-256x256.png?rev=3624907)

# Booker Privacy Spam Guard

 Par [booker GmbH](https://profiles.wordpress.org/bookergroup/)

[Télécharger](https://downloads.wordpress.org/plugin/booker-privacy-spam-guard.1.6.6.zip)

 * [Détails](https://fr.wordpress.org/plugins/booker-privacy-spam-guard/#description)
 * [Avis](https://fr.wordpress.org/plugins/booker-privacy-spam-guard/#reviews)
 *  [Installation](https://fr.wordpress.org/plugins/booker-privacy-spam-guard/#installation)
 * [Développement](https://fr.wordpress.org/plugins/booker-privacy-spam-guard/#developers)

 [Support](https://wordpress.org/support/plugin/booker-privacy-spam-guard/)

## Description

Booker Privacy Spam Guard protects Elementor forms and the native WordPress comment
form from spam without unnecessarily processing personal data. It is built specifically
for Elementor users: the classic Elementor Pro Form widget gets the full feature
set, and the WordPress comment form is covered as well. The new Atomic Form widget
receives content checks, rate limiting, auto-ban and local proof of work based on
the global default protection level; per-form honeypot and time checks are not yet
available for its newer editor control system.

 * Invisible honeypot field with a random field name that is unique per installation
 * Time-based plausibility check via a signed, tamper-proof time window
 * Server-side nonce integrity check per form
 * Content heuristic: blocks entries with too many links or your own spam keywords
 * Rate limiting based on a pseudonymous, daily-rotating fingerprint (no raw data
   such as IP addresses is stored)
 * Automatic ban for fingerprints that repeatedly stand out (threshold and time 
   window configurable)
 * Local adaptive SHA-256 proof-of-work challenge with no external service, cookies
   or visible puzzle
 * Per-form protection levels (Off / Basic / Standard / Strict)
 * Statistics overview with a 14-day history chart and a list of blocked requests
   in the WordPress admin
 * Ready-to-use text snippet for your privacy policy, including integration with
   WordPress’ built-in Privacy Policy Guide
 * Configurable client IP detection for sites behind a reverse proxy, load balancer
   or CDN (e.g. Cloudflare), with a trusted-proxy list to prevent spoofing
 * Cache- and CDN-friendly: the timing token and nonce are refreshed on page load
   from a non-cached endpoint, so full-page or edge caches never serve visitors 
   a stale token
 * No cookies, no external requests, no subscription costs

The built-in local proof-of-work provider uses the challenge extension points; optional
alternative providers can be registered through the same interface.

The plugin’s privacy-friendly, data-minimal design does not, on its own, make your
entire website legally compliant – that depends on many other factors and remains
your responsibility.

## Installation

 1. Upload the plugin folder to `wp-content/plugins/`, or install it as a ZIP via the
    WordPress admin.
 2. Activate the plugin.
 3. Elementor (free or Pro) must be active; the actual form processing requires Elementor
    Pro.
 4. Under « Booker Tools »  « Privacy Spam Guard »  the « Settings » tab, set the default
    protection level, proof-of-work mode, retention period, your own spam keywords 
    and the auto-ban threshold.
 5. In the Elementor editor, the protection level can be adjusted per form under « 
    Additional Options ».
 6. Copy the privacy policy text snippet at the bottom of the settings page, or import
    it into your own privacy page via Settings  Privacy  « Load suggested content ».

## FAQ

### Are any cookies set?

No. The fingerprint is generated exclusively server-side from a shortened IP address,
the user agent and a secret-derived value that changes daily – without cookies or
local storage. As an online identifier, the fingerprint should nevertheless be treated
as pseudonymous data.

### Is any data sent to third parties?

No. No external HTTP requests are made.

### Why do I see no effect without Elementor Pro?

The actual form processing (submission, validation, sending) is part of Elementor
Pro. Without an active Elementor Pro, the plugin does not register any of its checks
for Elementor forms. The native WordPress comment form is still protected.

### What happens during an automatic ban?

If a pseudonymous fingerprint is blocked more often than the configured threshold(
default: 8) within the configured time window (default: 24 hours), further requests
from it are rejected automatically – even if an individual request would look harmless
on its own. Daily fingerprints within the rolling window are checked together, including
across UTC day boundaries. The ban expires by itself once the old entries fall out
of the window; it can be disabled or adjusted in the settings.

### Are the nonce and timing token a CAPTCHA replacement?

No. They reject malformed requests and simple automated submissions, but are deliberately
available to real visitors on public, cached pages and therefore are not secrets.
The local proof-of-work challenge adds a short-lived, fingerprint- and form-bound
calculation that makes replay and mass submissions more expensive. Honeypot, content
checks, rate limiting and auto-ban remain additional layers.

### Does proof of work require JavaScript?

Yes. When the local proof-of-work challenge is enabled, visitors need JavaScript
to submit a protected form. The calculation runs in a Web Worker so that the page
remains responsive. You can disable the challenge under the plugin settings if a
no-JavaScript submission path is required.

### Is the privacy policy text snippet legally binding?

No, it is a wording suggestion, not legal advice. Please review it before use and
adapt it to your own privacy policy.

### Does « GDPR » mean my website is automatically GDPR-compliant?

No. The plugin is built to be particularly data-minimal itself (no cookies, no external
services, pseudonymous daily fingerprints). The legal compliance of your entire 
website depends on many other factors and remains your responsibility.

### My site runs behind Cloudflare or a reverse proxy. What should I configure?

Under Settings, set « Client IP detection » to the matching header (e.g. CF-Connecting-
IP for Cloudflare) and enter your proxy’s IP addresses or ranges in the trusted-
proxy list. A forwarded header is only trusted when the request comes from one of
those addresses, which prevents attackers from spoofing IPs to bypass rate limiting.

## Avis

Il n’y a aucun avis pour cette extension.

## Contributeurs/contributrices & développeurs/développeuses

« Booker Privacy Spam Guard » est un logiciel libre. Les personnes suivantes ont
contribué à cette extension.

Contributeurs

 *   [ booker GmbH ](https://profiles.wordpress.org/bookergroup/)

[Traduisez « Booker Privacy Spam Guard » dans votre langue.](https://translate.wordpress.org/projects/wp-plugins/booker-privacy-spam-guard)

### Le développement vous intéresse ?

[Parcourir le code](https://plugins.trac.wordpress.org/browser/booker-privacy-spam-guard/),
consulter le [SVN dépôt](https://plugins.svn.wordpress.org/booker-privacy-spam-guard/),
ou s’inscrire au [journal de développement](https://plugins.trac.wordpress.org/log/booker-privacy-spam-guard/)
par [RSS](https://plugins.trac.wordpress.org/log/booker-privacy-spam-guard/?limit=100&mode=stop_on_copy&format=rss).

## Journal des modifications

#### 1.6.6

 * Fixed: admin styles and scripts now use the actual page hooks returned by WordPress,
   ensuring they load reliably after the unique menu-prefix migration.

#### 1.6.5

 * WordPress.org compatibility: all declarations, stored data, REST routes, script
   handles and browser globals now use the unique `bookprsp` prefix.
 * Compatibility: existing settings, fingerprint secrets, honeypot state and statistics
   are migrated automatically from the former short prefix.
 * Internationalization: locale-specific PO/MO files are no longer bundled; translations
   are delivered through translate.wordpress.org.

#### 1.6.4

 * Changed: renamed the plugin to Booker Privacy Spam Guard and aligned the WordPress.
   org slug, text domain and package names with `booker-privacy-spam-guard`.
 * Compatibility: existing settings, statistics, database tables, filters and PHP
   extension points remain unchanged during the rename.

#### 1.6.3

 * Fixed: signed public-form integrity tokens are no longer tied to the WordPress
   login session, so submissions by logged-in visitors are accepted correctly.
 * Fixed: the integrity token is refreshed before every submission without resetting
   the minimum-time check.

#### 1.6.2

 * Fixed: every submission attempt now receives a fresh single-use proof, so retrying
   after an Elementor field-validation or action error no longer triggers replay
   protection.
 * Fixed: technical challenge, timing and nonce failures no longer contribute to
   auto-ban, and auto-ban rejections no longer extend their own ban window.

#### 1.6.1

 * Fixed: Elementor popup forms now initialize their own proof-of-work state after
   Elementor clones the popup template, preventing submissions with an empty proof.

#### 1.6.0

 * New: local adaptive SHA-256 proof-of-work challenge calculated in a Web Worker,
   with no cookies, visible puzzle or external provider.
 * Security: challenges are signed, bound to the form and daily fingerprint, expire
   after a short period and are protected against replay.
 * Adaptive protection: recent blocked attempts increase the required work; Basic
   and Strict protection levels adjust the baseline automatically.
 * Integration: classic Elementor forms, Atomic Forms and native WordPress comments
   are supported without adding proof fields to submitted form content.
 * New settings for challenge mode and base difficulty, plus automatic refresh for
   forms left open for a longer period.
 * Privacy policy wording and German translations updated for the local calculation.

#### 1.5.1

 * Fixed: the site-wide default protection level now applies to new and legacy classic
   Elementor forms without an explicit per-form value.
 * Fixed: Atomic Forms on the same page now use their individual Elementor form 
   IDs for rate limiting and statistics.
 * Fixed: content checks no longer fail on hosts without the optional PHP mbstring
   extension.
 * Fixed: auto-ban now evaluates daily fingerprints together across UTC day boundaries
   for the complete configured rolling window.
 * Privacy: documentation and suggested privacy-policy wording now correctly describe
   the fingerprint as pseudonymous data.
 * Documentation: clarified that public nonce and timing tokens are anti-automation
   layers, not secret CAPTCHA replacements.

#### 1.5.0

 * New: built-in spam word list, checked in addition to your own keywords. Terms
   are matched as whole words (so « loan » cannot match inside « download »), the
   list is filterable via `bookprsp_default_spam_keywords`, and it can be switched
   off in the settings.
 * New: the honeypot field name now rotates periodically (weekly by default, filterable
   via `bookprsp_honeypot_rotation`), so a bot cannot memorize it permanently. The
   previous name stays valid for detection, so pages still served from a cache keep
   working.

#### 1.4.0

 * New: submissions without a page URL are blocked. Elementor’s own form script 
   always posts the page URL; a submission without it did not come from a rendered
   page and is a reliable bot indicator (posting straight to admin-ajax.php).
 * New: link shorteners (bit.ly, tinyurl.com, cutt.ly, …) are detected as a spam
   signal. The list is filterable via `bookprsp_link_shorteners`; hosts are matched
   exactly, so unrelated domains cannot false-match.
 * Changed: the link threshold at protection level Standard is now 2 (was 3).
 * Security: the timing token’s fallback lifetime is now 2 hours (was 24). Real 
   visitors get a freshly minted token via the non-cached endpoint anyway, so this
   mainly shrinks the window in which a token scraped from a cached page could be
   replayed.

#### 1.3.0

 * New: cache/CDN compatibility. The timing token and nonce are now refreshed on
   page load from a non-cached REST endpoint, so full-page or edge caches (e.g. 
   Cloudflare) can no longer serve visitors a frozen, expired token. Falls back 
   gracefully to the server-rendered token when JavaScript is unavailable.
 * Improved: the timing token’s maximum age is now generous and filterable (`bookprsp_timing_max_seconds`)
   to avoid false-blocking real visitors on long-cached pages.

#### 1.2.1

 * New: intro/welcome section on the statistics page that explains the plugin’s 
   purpose and benefits at a glance.

#### 1.2.0

 * New: configurable client IP detection for sites behind a reverse proxy, load 
   balancer or CDN (e.g. Cloudflare), including a trusted-proxy list (IP/CIDR) to
   protect against spoofed headers.
 * New: automatic database upgrade path that keeps the schema up to date on plugin
   updates.
 * Menu structure: all views now grouped under « Booker Tools  Privacy Spam Guard»
   with tabs for statistics and settings.

#### 1.1.0

 * New: content heuristic (too many links, your own spam keywords) as an additional
   criterion.
 * New: automatic ban for repeatedly blocked fingerprints (threshold/time window
   configurable).
 * New: 14-day history chart on the statistics page.
 * New: ready-to-use privacy policy text snippet, including integration with the
   WordPress Privacy Policy Guide.

#### 1.0.0

 * Initial release: honeypot, time check, nonce check, rate limiting, per-form protection
   levels, statistics page.

## Méta

 *  Version **1.6.6**
 *  Dernière mise à jour **il y a 3 mois**
 *  Installations actives **10+**
 *  Version de WordPress ** 6.0 ou plus **
 *  Testé jusqu’à **7.0.7**
 *  Version de PHP ** 7.4 ou plus **
 *  Langue
 * [English (US)](https://wordpress.org/plugins/booker-privacy-spam-guard/)
 * Étiquettes
 * [elementor](https://fr.wordpress.org/plugins/tags/elementor/)[forms](https://fr.wordpress.org/plugins/tags/forms/)
   [GDPR](https://fr.wordpress.org/plugins/tags/gdpr/)[honeypot](https://fr.wordpress.org/plugins/tags/honeypot/)
   [spam protection](https://fr.wordpress.org/plugins/tags/spam-protection/)
 *  [Vue avancée](https://fr.wordpress.org/plugins/booker-privacy-spam-guard/advanced/)

## Évaluations

Aucun avis n’a encore été envoyé.

[Votre avis](https://wordpress.org/support/plugin/booker-privacy-spam-guard/reviews/#new-post)

[Tout voir](https://wordpress.org/support/plugin/booker-privacy-spam-guard/reviews/)

## Contributeurs

 *   [ booker GmbH ](https://profiles.wordpress.org/bookergroup/)

## Support

Quelque chose à dire ? Besoin d’aide ?

 [Voir le forum de support](https://wordpress.org/support/plugin/booker-privacy-spam-guard/)