Los formularios de contacto en WordPress suelen venir por default con el plugin Contact Form 7. Una vez implementado puede ocurrir que la casilla se llene diariamente de mensajes de spam. Aquí una guía para evitar el spam en formularios creados con Contact Form 7.
Medidas eficaces para evitar el spam en tus formularios de contacto
Índice del artículo
- ¿Qué es Contact Form 7?
- Tips Anti Spam para formularios de Contacto
- Añadir Recaptcha
- Instalar el complemento Contact Form 7 Honeypot
- Instalar Aksimet
- Palabras no permitidas en comentarios
¿Qué es contact form 7?
Contact Form 7 es un plugin de WordPress que puede gestionar múltiples formularios de contacto, por ser ligero suele venir ya integrado en la mayoría de plantillas de WordPress. Además, se puede personalizar el formulario y el contenido de los correos electrónicos de manera sencilla mediante un simple marcado. El formulario es compatible con envíos por Ajax, CAPTCHA, filtrado de spam de Akismet y mucho más.
Tips Anti Spam para formularios de contacto
1. Añadir reCAPTCHA
El plugin contact form 7 trae una integración con reCAPTCHA.Para acceder, simplemente navega hasta ‘Contacto’ en la barra de menú de la izquierda y selecciona ‘Integración’. Se presentará un enlace a google.com/recaptcha. Deberás registrarte para obtener una clave API. A continuación, agrega un código abreviado a tu formulario de contacto [recaptcha] y se mostrará reCAPTCHA.
2. Instalar el complemento Contact Form 7 Honeypot
Esta adición al Formulario de contacto 7 agrega la funcionalidad antispam básica de honeypot para frustrar los robots de spam.
Si bien parte del spam se envía manualmente, la gran mayoría la publican bots con secuencias de comandos específicas para enviar spam a la mayor cantidad de tipos de formularios. Con este método, completan los campos de forma un tanto ciega, independientemente de si el campo debe completarse o no. Así es como un honeypot atrapa al bot: introduce un campo adicional en el formulario que, si se completa, hará que el formulario no se valide.
3. Instalar Akismet
Akismet compara sus comentarios y envíos de formularios de contacto con una base de datos global de spam para evitar que su sitio publique contenido malicioso. El complemento verifica automáticamente todos los comentarios y filtra los que parecen spam.
El primer paso es activar el complemento Akismet. Dado que el paquete de complementos de Akismet se incluye con WordPress, no es necesario instalarlo manualmente. Ve al menú Complementos y simplemente activa el complemento titulado Akismet Anti-Spam.
Necesitas una clave API para usar Akismet. Si lo usas en un blog personal, puedes obtener una clave API de forma gratuita. Para sitios corporativos o comerciales, hay suscripciones pagas disponibles.
El objetivo principal de Akismet es proteger los formularios de comentarios de WordPress. Para usar Akismet para proteger el Formulario de contacto 7, debes dar opciones específicas a los campos de entrada (etiquetas de formulario).
Hay tres opciones relacionadas con Akismet:
akismet:autor
Le da esta opción al campo donde los remitentes ingresan sus nombres.
Ejemplo: [texto* tu-nombre akismet:autor]
akismet:autor_email
Le da esta opción al campo donde los remitentes ingresan sus direcciones de correo electrónico.
Ejemplo: [correo electrónico* tu-correo electrónico akismet:autor_correo]
akismet:autor_url
Le da esta opción al campo donde los remitentes ingresan la URL de sus sitios web.
Ejemplo: [texto su-url akismet:author_url]
Para implementar Akismet en un formulario de contacto, usa una o más de estas opciones en el formulario. Para obtener resultados precisos, se recomienda utilizar tantas opciones como sea posible.
Cuando se implementa Akismet, Contact Form 7 envía datos a Akismet cuando un usuario envía el formulario. Los datos se componen de todas las entradas del usuario (no solo los campos con una opción akismet:*) y variables de los entornos. Akismet verificará los datos para responder con una respuesta de «spam» o «ham».
Si la respuesta es «spam», Contact Form 7 suspenderá el correo electrónico y mostrará un mensaje que dice: «Hubo un error al intentar enviar su mensaje», rodeado por un borde naranja.
Probando el filtrado de spam
Para probar si el filtrado de spam funciona correctamente, intenta ingresar «viagra-test-123» en el campo de nombre (akismet:autor) o «[email protected]» en el campo de correo electrónico (akismet:autor_email), y enviando el formulario. Con estas palabras mágicas reservadas para la prueba, Akismet debe devolver una respuesta de «correo no deseado». Si funciona como se esperaba, verás un mensaje de error con un borde naranja.
Informar detección falsa
El filtrado automático de spam no puede ser 100% preciso. Existirán falsos positivos (ham clasificado incorrectamente como spam) y falsos negativos (spam clasificado incorrectamente como ham). Cuando encuentres que los mensajes son tratados incorrectamente por Akismet, puedes informar la detección falsa. Akismet aprende de la información que reporta y se mejorará la precisión del algoritmo de filtrado de spam.
Para informar detecciones falsas a Akismet, necesitas activar el complemento Flamingo porque Contact Form 7 no viene con la capacidad de almacenar datos de envío en la base de datos. Puede ver mensajes a través de formularios de contacto en el menú Flamingo > Mensajes entrantes. Los mensajes normales están en la lista de Bandeja de entrada y los mensajes de spam están en la lista de Spam.
Cuando encuentres un mensaje en la lista de la Bandeja de entrada que debería haber sido marcado como correo no deseado, ábrelo y cambia el Estado a Correo no deseado. Flamingo envía automáticamente un informe de falso negativo a la API de Akismet. Del mismo modo, cambia el estado a No es spam cuando encuentre un mensaje normal en la lista de spam. Flamingo informa correctamente los falsos positivos a Akismet.
4. Palabras no permitidas en comentarios
Si sufres una afluencia de spam o mensajes no deseados a través de los formularios de contacto y no puedes bloquearlos por completo utilizando reCAPTCHA o Akismet, la función de lista no permitida será de gran ayuda.
La lista no permitida es originalmente una característica de WordPress para ayudar a administrar los comentarios. Contact Form 7 también puede utilizarlo para bloquear palabras específicas o direcciones IP.
La lista no permitida es bastante simple de usar; simplemente inicia sesión en la pantalla de administración de WordPress, ve al menú Configuración> Discusión, y luego encontrarás la sección Claves de comentario no permitidas en el medio de la pantalla.
La sección Claves de comentario no permitidas en Ajustes > Comentarios
Escribe una palabra o dirección IP por línea en el cuadro de texto. Los mensajes que contengan la palabra o que se envíen desde la dirección IP de la lista que ha creado serán tratados como spam por el Formulario de contacto 7 y no se entregarán.
¿Cómo se puede obtener la dirección IP desde la que se originan los mensajes? El método más simple es usar la etiqueta de correo especial [_remote_ip] en el contenido del correo electrónico que se le envió. Mostrará la dirección IP del remitente, conocida como «Lista negra de comentarios»)
Estas son algunas de las herramientas para evitar el spam en sus formularios de contacto de WordPress, de esta manera evitaremos los envíos masivos de mensajes spam a nuestra casilla de correos provenientes de el rellenado de formularios de contacto en nuestra web.
Fuentes: https://contactform7.com/spam-filtering-with-akismet/ / https://www.clook.net/blog/stopping-contact-form-7-spam/