Linux 软件免费装
Banner图

Kitgenix CAPTCHA for Cloudflare Turnstile

开发者 kitgenix
carlbensy16
更新时间 2026年9月3日 04:29
捐献地址: 去捐款
PHP版本: 8.1 及以上
WordPress版本: 7.1
版权: GPLv3 or later
版权网址: 版权信息

标签

captcha woocommerce anti spam form security cloudflare turnstile

下载

1.0.12 1.0.18 1.0.3 1.0.8 1.1.0 1.1.3 1.0.11 1.0.15 1.0.16 1.0.7 1.0.12.1 1.0.13 1.0.14 1.0.17 2.0.0 2.0.1 2.0.2 1.0.10 1.0.9 1.0.0 1.0.1 1.0.2 1.0.4 1.0.5 1.0.6

详情介绍:

Kitgenix CAPTCHA for Cloudflare Turnstile adds Cloudflare Turnstile CAPTCHA and anti-spam protection to WordPress, WooCommerce and a wide range of form, membership, community and ecommerce plugins. Challenges are not treated as a client-side decoration: submitted Turnstile tokens are verified server-side with Cloudflare before a protected action is accepted. The plugin is designed for site owners who want to reduce automated login attempts, fake registrations, comment spam, bot-driven checkout abuse and unwanted form submissions while using Cloudflare's privacy-oriented Turnstile challenge rather than a traditional image CAPTCHA. Configuration, integration controls, diagnostics and local verification metrics are managed inside WordPress. The only service required for CAPTCHA functionality is Cloudflare Turnstile itself; no Kitgenix verification proxy is used. Learn more about Kitgenix WordPress plugins at Kitgenix. Supported WordPress and Plugin Integrations The codebase contains dedicated integrations for: Each integration is loaded conditionally and can use integration-specific display/validation behaviour rather than forcing one generic hook onto every form system. Server-Side Turnstile Verification The browser obtains a Turnstile response token from Cloudflare's official widget. When a protected form is submitted, the plugin sends that token to Cloudflare's official Siteverify endpoint using the WordPress HTTP API. The protected action is allowed only when the verification result satisfies the integration's validation flow. This server-side step is important because simply placing a widget in the browser is not sufficient protection on its own. The plugin tracks the most recent verification response, error codes and latency for diagnostics and can record aggregate verification metrics locally. Setup Verification for Login-Sensitive Forms Login, registration and other account-sensitive protections can be gated behind a setup-verification state. The administrator can verify the configured Site Key and Secret Key before those protections are treated as ready. This reduces the risk of enabling a broken key pair on a login screen and accidentally locking legitimate administrators or customers out of the site. Site and secret keys can be supplied from plugin settings or from supported environment variables/constants, allowing security-conscious deployments to keep the secret outside the normal WordPress options table. Replay Protection Turnstile tokens are intended to be short lived and single use. The plugin includes optional replay protection that hashes accepted tokens and temporarily remembers that hash. A token that is submitted again during the replay window can be rejected rather than being accepted repeatedly. The replay window is filterable for developers. Stored replay information is a hash/temporary value, not the raw challenge token itself. Honeypot and Layered Anti-Spam Controls An optional honeypot can be rendered alongside Turnstile. This adds a second low-friction signal for simple bots that fill fields a normal visitor never sees. The plugin also supports whitelisting logic so trusted requests can bypass the challenge where appropriate. Whitelist decisions can take account of configured rules and developer filters rather than hard-coding one bypass mechanism for every site. Trusted Proxy and Client IP Handling Sites may sit behind Cloudflare, another reverse proxy or a load balancer. The client-IP component can be configured to trust proxy headers only when the request path matches the trusted-proxy configuration. This avoids blindly believing spoofable forwarding headers from arbitrary visitors. Administrators can also choose whether the resolved visitor IP is included in the Siteverify request to Cloudflare. A developer filter is available to change that behaviour when required by a site's privacy or infrastructure policy. Widget Appearance and Placement The plugin supports central defaults plus integration-level overrides for Turnstile appearance. Depending on the supported integration, administrators can control options such as theme, size, appearance and language, and can choose placement behaviour where the integration exposes more than one suitable hook. A manual shortcode is also registered: [kitgenix_turnstile] The shortcode is useful when the site owner needs to render the widget in a supported custom workflow. Rendering a widget alone does not automatically secure arbitrary custom PHP processing; custom form handlers must still validate the submitted token server-side. Diagnostics, Metrics and Site Health The plugin includes diagnostics for configuration and verification health, local counters for passed/failed checks, latency information, recent verification events and integration-level metrics. Site Health integration can surface configuration or connectivity issues to administrators. Developer Mode adds additional troubleshooting detail without changing the fundamental requirement that live submissions be verified correctly when protection is active. Settings Portability Settings can be exported and imported for controlled migration between WordPress installations. The transfer system is designed for plugin configuration rather than for exporting visitor submissions or unrelated site data. Performance and Script Loading The public Cloudflare Turnstile script is loaded only for pages/contexts where the plugin determines that a Turnstile widget may be needed. The loader includes duplicate-script detection so multiple integrations do not intentionally enqueue several copies of the same Turnstile API script. Public assets are kept separate from the admin interface, and admin-only diagnostics/settings code does not need to run as part of every anonymous form request. Privacy and Data Flow Turnstile is an external service provided by Cloudflare, so challenge rendering and server-side verification necessarily communicate with Cloudflare. The plugin itself stores configuration and limited diagnostic/aggregate verification data locally. It does not require a Kitgenix account and does not send form contents to Kitgenix for verification. The exact Cloudflare data flow, WordPress.org Hub request and Google Fonts admin request are documented in the External Services section below. Common Uses

安装:

  1. Upload the plugin through Plugins → Add New → Upload Plugin, or install it from the WordPress.org Plugin Directory.
  2. Activate Kitgenix CAPTCHA for Cloudflare Turnstile.
  3. Create a Turnstile widget in your Cloudflare account and copy its Site Key and Secret Key.
  4. Open the plugin settings from the Kitgenix menu in wp-admin.
  5. Enter the Site Key and Secret Key and run the setup verification test.
  6. Enable only the integrations and forms you want to protect.
  7. Test the protected forms while logged out and, where relevant, through checkout/account flows.
A Cloudflare account and Turnstile key pair are required. Your website does not need to use Cloudflare's CDN or proxy service to use Turnstile.

屏幕截图:

  • WordPress registration protected with Cloudflare Turnstile.
  • Cloudflare Turnstile on WooCommerce Classic Checkout.
  • Cloudflare Turnstile on WooCommerce Checkout Blocks / Store API checkout.
  • WooCommerce My Account login protection.
  • Turnstile protection on a contact form.
  • WPForms protected with Cloudflare Turnstile.
  • Elementor Pro Forms protected with Cloudflare Turnstile.
  • Site Key, Secret Key and setup-verification settings.
  • Security controls.

升级注意事项:

2.0.2 Version 2.0.2 is recommended for all sites.

常见问题:

What is Cloudflare Turnstile?

Cloudflare Turnstile is a CAPTCHA alternative that runs a challenge in the visitor's browser and produces a token. The token must then be validated server-side before the protected action is accepted.

Do I need to use Cloudflare DNS or the Cloudflare CDN?

No. Turnstile can be used on a WordPress site even when the site's traffic is not proxied through Cloudflare.

Do I need a Cloudflare account?

Yes. You need a Cloudflare account and a Turnstile Site Key / Secret Key pair.

Does the plugin verify Turnstile on the server?

Yes. Supported integrations validate the token with Cloudflare's Siteverify endpoint before accepting the protected submission, unless Developer Mode or the relevant per-integration Test Mode is intentionally configured to warn rather than block.

Which WordPress forms can it protect?

Native WordPress login, registration, lost/reset password and comment forms are supported. The plugin also supports WooCommerce, Easy Digital Downloads, Elementor Pro Forms, Contact Form 7, WPForms, Fluent Forms, Formidable Forms, Forminator, Gravity Forms, JetFormBuilder, Jetpack Forms, Kadence Forms, Ninja Forms and several membership/community plugins.

Does it support WooCommerce Checkout Blocks?

Yes. The plugin can render Turnstile in block-based checkout and validates the token server-side during the WooCommerce Store API checkout request.

Does it support WooCommerce HPOS?

Yes. The plugin declares HPOS compatibility and uses WooCommerce order CRUD methods for its Checkout Blocks verification metadata.

Can I choose where the Turnstile widget appears?

Yes. Automatic placement is available for supported integrations, and many integrations include a shortcode-only placement option. The [kitgenix_turnstile] shortcode can also render a widget manually.

Can I use the shortcode on any custom form?

The shortcode can render the widget, but an unsupported custom form still needs a server-side validation integration. Rendering a widget alone is not sufficient security.

Can different forms use different Turnstile themes or sizes?

Yes. Global theme, size and language settings can be overridden per integration.

What does Developer Mode do?

Developer Mode is warn-only. Failed verification is recorded but does not block the submission. Individual integrations can also be placed in Test Mode without putting the entire site into warn-only mode.

What is replay protection?

Replay protection helps reject a Turnstile token that has already been accepted or processed. This reduces the usefulness of captured or repeatedly submitted tokens.

Does the plugin include a honeypot?

Yes. The optional honeypot can reject simple automated submissions before Cloudflare Siteverify is contacted.

Can I whitelist administrators or trusted visitors?

The plugin can whitelist logged-in users, configured IP addresses/ranges and User-Agent strings. Whitelisted visitors do not need to complete Turnstile, and the frontend Turnstile script is skipped for them.

Does it work behind Cloudflare or another reverse proxy?

Yes. Proxy-aware IP detection is included. For security, forwarded headers are trusted only when proxy trust is enabled and the connecting proxy matches your configured trusted proxy list.

Can I stop the visitor IP address being sent to Cloudflare Siteverify?

Developers can return false from the kitgenix_turnstile_send_remoteip filter. See the External Services section for the default data flow.

Can I store the Site Key and Secret Key outside the WordPress database?

Yes. The plugin supports the KITGENIX_CAPTCHA_FOR_CLOUDFLARE_TURNSTILE_SITE_KEY and KITGENIX_CAPTCHA_FOR_CLOUDFLARE_TURNSTILE_SECRET_KEY constants and matching environment variables.

Can I move settings between sites?

Yes. Export settings to JSON and import them using Replace or Merge mode. Credentials are excluded by default unless you explicitly include them.

Why is the widget not appearing?

Check that the Site Key exists, the integration and relevant form toggle are enabled, the visitor is not whitelisted, and another plugin or optimisation rule is not blocking https://challenges.cloudflare.com. Also check the plugin's duplicate-loader warning and Site Health test.

Why do I see expired, missing or replayed-token errors?

Turnstile tokens are short-lived and single-use. Cached forms, back-button resubmissions, double-clicks, delayed JavaScript or submitting after a token has expired can all require a fresh Turnstile challenge.

更新日志:

2.0.2 (2 September 2026) 2.0.1 (2 September 2026) 2.0.0 (31 August 2026)