Descripción
LukaCodes AntiSpam Shield es un plugin ligero y sin bloat que protege la sección de comentarios de WordPress y los formularios de contacto contra el spam. Cinco herramientas independientes, una sola página de ajustes. Lee la documentación completa.
- Disable Website Field — Removes the URL/website field from the comment form. Works with all themes, including those that hardcode the field (CSS fallback included).
- Eliminar enlaces de los comentarios — Elimina automáticamente todos los hipervínculos
<a href>del contenido de los comentarios, tanto al mostrarlos como antes de guardarlos en la base de datos. Los spammers no obtienen ningún beneficio al publicar enlaces. - reCAPTCHA v3 — Añade la protección invisible de puntuación anti-bots de Google. Sin casillas, sin rompecabezas, sin fricción para los usuarios reales. Los bots se bloquean silenciosamente en el servidor.
- Cloudflare Turnstile — Una alternativa CAPTCHA respetuosa con la privacidad. Es mutuamente excluyente con reCAPTCHA v3; al activar uno, el otro se desactiva automáticamente.
- Login Shield — Adds CAPTCHA to the WordPress login form (
wp-login.php). Stops brute-force bots silently. - Registration Shield — Adds CAPTCHA to the WordPress registration form. Blocks bot account creation.
- Integración con WPForms — Aplica la misma protección CAPTCHA a WPForms Lite usando las mismas claves que ya configuraste, sin configuración adicional.
All features are independent — enable only what you need.
Login & Registration Shield
La versión 1.1.2 añade protección CAPTCHA a wp-login.php:
- Login Shield — Hooks into
wp_authenticate_userfor server-side verification after credentials are checked. Returns aWP_Errorif CAPTCHA fails — WordPress displays it as a normal login error. - Registration Shield — Hooks into
registration_errorsto add CAPTCHA validation during registration. Works alongside all other WordPress registration validations.
Ambos pueden activarse o desactivarse de forma independiente desde el panel de ajustes. Los administradores que ya han iniciado sesión nunca se ven afectados.
Integración con WPForms
La versión 1.1.0 introduce protección CAPTCHA para WPForms Lite:
- Se engancha a
wpforms_display_submit_beforepara inyectar el widget CAPTCHA antes del botón de envío. - Se engancha a
wpforms_processpara la verificación del token en el servidor. - Funciona tanto con reCAPTCHA v3 (invisible) como con Cloudflare Turnstile (widget visible).
Nota: WPForms Pro incluye su propia integración CAPTCHA nativa; esta función está pensada solo para usuarios de WPForms Lite.
¿Por qué AntiSpam Shield?
La mayoría de los plugins antispam son pesados, requieren cuentas o añaden CAPTCHAs poco agradables. LukaCodes AntiSpam Shield es diferente:
- ~30 KB en total: sin librerías externas ni dependencia de jQuery
- Página de ajustes con prueba de claves en vivo: verifica tus claves de reCAPTCHA o Turnstile antes de activarlas
- Vista previa de eliminación de enlaces: pega cualquier texto de comentario y ve exactamente qué se elimina
- Respaldo elegante: si la API de Google o Cloudflare no está disponible, los comentarios se dejan en moderación (nunca se pierden)
- Los usuarios de confianza (administradores) omiten automáticamente las comprobaciones CAPTCHA
- Exclusión mutua: reCAPTCHA v3 y Cloudflare Turnstile no pueden estar activos al mismo tiempo
- WP Coding Standards compliant — fully escaped output, nonce-protected AJAX
reCAPTCHA v3: cómo funciona
Cuando un visitante envía un formulario, JavaScript solicita silenciosamente un token de puntuación a Google. El token se envía junto con el formulario y se verifica en el servidor según tu umbral mínimo de puntuación (configurable de 0.1 a 1.0). No se requiere interacción del usuario.
Cloudflare Turnstile: cómo funciona
Se muestra un widget de Turnstile dentro del formulario. Cuando el visitante completa el desafío, se envía un token y se verifica en el servidor contra la API de Cloudflare.
Servicios de terceros
Este plugin utiliza opcionalmente los siguientes servicios de terceros:
Google reCAPTCHA v3
Un servicio proporcionado por Google LLC.
- Qué hace: Detecta bots y spam en el formulario de comentarios y en los formularios de contacto sin interacción del usuario.
- Cuándo se envían datos: Solo cuando reCAPTCHA v3 está activado. Se envía un token a
https://www.google.com/recaptcha/api/siteverifyen cada envío del formulario. - Qué datos se envían: La dirección IP del visitante y un token de reCAPTCHA.
- Política de privacidad de Google: https://policies.google.com/privacy
- Términos del servicio de Google: https://policies.google.com/terms
Cloudflare Turnstile
Un servicio proporcionado por Cloudflare, Inc.
- Qué hace: Muestra un widget CAPTCHA respetuoso con la privacidad en los comentarios y formularios de contacto.
- Cuándo se envían datos: Solo cuando Cloudflare Turnstile está activado. Se envía un token a
https://challenges.cloudflare.com/turnstile/v0/siteverifyen cada envío del formulario. - Qué datos se envían: La dirección IP del visitante y un token de Turnstile.
- Política de privacidad de Cloudflare: https://www.cloudflare.com/privacypolicy/
- Términos del servicio de Cloudflare: https://www.cloudflare.com/website-terms/
Ambos servicios son totalmente opcionales. Si no introduces claves API ni activas ningún CAPTCHA, no se enviará ningún dato a terceros.
Capturas
Instalación
- Sube la carpeta
lukacodes-comment-shielda/wp-content/plugins/ - Activa el plugin desde Plugins Plugins instalados
- Ve a Ajustes AntiSpam Shield para configurar tus opciones
reCAPTCHA v3 Configuración
- Visita la consola de administración de Google reCAPTCHA
- Create a new site — select Score based (v3)
- Añade tu dominio a la lista de dominios permitidos
- Copy the Site Key and Secret Key into the plugin settings
- Use the built-in 🔍 Test Keys button to verify connectivity before enabling
- Activa reCAPTCHA v3, establece tu puntuación mínima y guarda
Configuración de Cloudflare Turnstile
- Visita el panel de Cloudflare Turnstile
- Crea un sitio nuevo y selecciona el tipo de widget (se recomienda Managed)
- Copy the Site Key and Secret Key into the plugin settings
- Use the built-in 🔍 Test Turnstile Keys button to verify connectivity before enabling
- Activa Cloudflare Turnstile y guarda; reCAPTCHA v3 se desactivará automáticamente
Configuración de formularios de contacto
No extra setup needed. Once reCAPTCHA v3 or Cloudflare Turnstile is configured, go to the Contact Forms section in the settings and toggle on each plugin you want to protect. The admin panel shows which form plugins are currently installed and active on your site.
FAQ
-
¿Esto requiere una cuenta de Google?
-
Solo si usas reCAPTCHA v3. Necesitas una cuenta de Google para obtener las claves desde la consola de administración de reCAPTCHA. El servicio es gratuito. Cloudflare Turnstile requiere en su lugar una cuenta gratuita de Cloudflare.
-
¿Puedo usar reCAPTCHA y Turnstile al mismo tiempo?
-
No; son mutuamente excluyentes. Al activar una, la otra se desactiva automáticamente tanto en la interfaz de ajustes como en el servidor.
-
¿Esto protege los formularios de acceso y registro?
-
Yes. Enable «Login Shield» and/or «Registration Shield» in the Login & Registration section of the settings panel. The same reCAPTCHA v3 or Turnstile keys are reused — no extra setup needed. Administrators are never blocked.
-
¿Esto protege WPForms Lite sin claves adicionales?
-
Sí. Las mismas claves de reCAPTCHA v3 o Turnstile que introduces para la protección de comentarios se reutilizan automáticamente en WPForms Lite. No se requiere configuración adicional.
-
¿Qué pasa si la API de Google o Cloudflare no está disponible?
-
El comentario o el envío del formulario se deja en moderación en lugar de ser rechazado. Nunca perderás un envío legítimo por una caída de la API.
-
¿Funciona con temas personalizados que incluyen el campo URL directamente en el código?
-
Sí. El plugin elimina el campo del array de formularios de WordPress y también inyecta CSS como solución de respaldo.
-
¿Esto funciona con plugins de caché?
-
Sí. Toda la lógica CAPTCHA se ejecuta tanto del lado del cliente (JS) como del lado del servidor (PHP al enviar). La caché no interfiere.
-
¿Necesito todas las funciones?
-
No. Cada función tiene su propio interruptor. Activa solo lo que tu sitio necesite.
Reseñas
No hay valoraciones para este plugin.
Colaboradores y desarrolladores
«LukaCodes AntiSpam Shield» es un software de código abierto. Las siguientes personas han colaborado con este plugin.
Colaboradores«LukaCodes AntiSpam Shield» está traducido en 2 idiomas. Gracias a los traductores por sus contribuciones.
Traduce «LukaCodes AntiSpam Shield» a tu idioma.
¿Interesado en el desarrollo?
Revisa el código , echa un vistazo al repositorio SVN o suscríbete al registro de desarrollo por RSS.
Registro de cambios
1.1.3
- Añadido: opción para desactivar los comentarios en todas las entradas del sitio
- Añadido: opción para desactivar los comentarios en todas las páginas del sitio
- Corregido: el hook CAPTCHA de WPForms se cambió a wpforms_process_before; ahora el envío del formulario se bloquea antes de que se envíe el correo si el token falta o es inválido
- Corregido: el probador de claves ahora valida que las claves de reCAPTCHA / Turnstile estén registradas para el dominio de este sitio
- Fixed: Keys from a different domain now show a clear «Domain mismatch» error instead of a false «keys look correct» result
- Mejorado: el probador de claves de Turnstile ahora envía la sitekey a la API de Cloudflare para permitir la validación a nivel de dominio
- Mejorado: la traducción al griego (el) se actualizó al 100 %; ahora todas las cadenas están traducidas
- Versión actualizada a 1.1.3
1.1.2
- Añadido Login Shield: protección CAPTCHA para el formulario de acceso de wp-login.php
- Added Registration Shield: CAPTCHA protection for wp-login.php registration form
- Login and Registration shields are independently togglable in the settings panel
- Both shields reuse existing reCAPTCHA v3 / Turnstile keys — no additional setup required
- Added Login Shield and Register Shield rows to Plugin Status panel
- Actualizada la plantilla POT con todas las nuevas cadenas i18n
- Actualizada la traducción griega (el) con todas las nuevas cadenas
- Versión actualizada a 1.1.2
1.1.0
- Añadida integración con WPForms Lite: protección con reCAPTCHA v3 y Cloudflare Turnstile para formularios de WPForms
- La protección de WPForms reutiliza las claves CAPTCHA existentes; no se requiere configuración adicional
- Añadido panel de WPForms en administración: detecta automáticamente si WPForms está instalado e incluye interruptor para activar/desactivar
- Añadida la fila WPForms Shield al panel de estado del plugin
- Actualizada la plantilla POT con todas las nuevas cadenas i18n
- Actualizada la traducción griega (el) con todas las nuevas cadenas
- Versión actualizada a 1.1.0
1.0.1
- Añadido Cloudflare Turnstile como segunda opción CAPTCHA (alternativa respetuosa con la privacidad a reCAPTCHA)
- Añadida lógica de exclusión mutua: al activar reCAPTCHA se desactiva Turnstile y viceversa
- Añadida verificación del token de Turnstile en el servidor con respaldo mediante moderación
- Añadido probador de claves de Turnstile en vivo en el panel de ajustes
- Actualizado uninstall.php para limpiar las opciones de Turnstile al eliminar
0.3
- Añadida verificación de reCAPTCHA en el servidor con validación de acción y hostname
- Añadido respaldo: el comentario se deja en moderación si la API de Google no está disponible
- Añadida la constante
COMMSH_VERSIONy el hook de activación para inicializar las opciones predeterminadas - Mejorado el umbral de puntuación: configurable de 0.1 a 1.0 con deslizador en vivo
0.2
- Integrada la protección invisible de Google reCAPTCHA v3 en el formulario de comentarios
- Añadida prueba de claves en tiempo real contra la API de Google
- Añadida vista previa en vivo de eliminación de enlaces con diferencia antes/después
- Corregido el error de doble envío en conexiones lentas
0.1
- Versión inicial
- Eliminar el campo de sitio web del formulario de comentarios (filtro + respaldo CSS)
- Eliminar enlaces HTML de los comentarios al mostrarlos y antes de guardarlos en la base de datos
