En ocasiones, los formularios de Contact Form 7 no se envían, y muestran un error de que no se ha podido enviar el formulario. Pues bien, siempre, siempre, fíjate en el color del recuadro del mensaje.

Como ves en la captura anterior, el color de línea de la caja que envuelve el mensaje que se vea al enviar un formulario es importante, porque te indica qué ha pasado, si se ha enviado correctamente o no, y lo más importante, si ha habido un error cuál ha sido el motivo:
- Verde – mensaje enviado correctamente
- Amarillo – error en alguno de los campos a rellenar (p.ej. tiene que ser un email y no lo parece)
- Naranja – el mensaje se ha marcado como SPAM
- Rojo – error en el envío del correo
Para los mensajes en verde, creo que está claro que no hace falta dedicarle un tutorial ¿no? ¿o sí?. En cualquier caso no será hoy 🙂
Para los mensajes en amarillo tampoco, simplemente el usuario no está completando bien alguno de los campos. Se le pide una URL y lo que ha puesto no tiene http o algo parecido. Tiene fácil solución, añade mensajes informativos a los campos (esto lo explicamos otro día).
Sobre los mensajes con el recuadro en rojo ya publiqué un tutorial para cuando WordPress no es capaz de enviar correos electrónicos, y ahí tienes la solución, o soluciones.
Así que nos queda uno, el mensaje con recuadro naranja, el que nos avisa de que Contact Form 7 considera que el mensaje que se ha tratado de enviar es basura, spam ¿y esto cómo se arregla?

¡Vamos a verlo!
¿Por qué Contact Form 7 cree que un envío de formulario es SPAM?
¡Ni puta idea!
En serio, no lo sé, ni siquiera está documentado. Es más, cuando empiezas a ver esos errores con el recuadro naranja da igual qué pongas, los marca todos como SPAM, prácticamente deja de funcionar el formulario, bueno no, dejan de funcionar TODOS los formularios.
Contact Form 7 simplemente utiliza el servicio que integres para controlar el SPAM, entre los siguientes:
- Lista negra de comentarios que hayas configurado en tu WordPress.
- reCAPTCHA de Google si has configurado la integración.
- Akismet, si has configurado la integración.
Pero…
En mis experimentos de científico loco he detectado un patrón:
- Si no configuras la integración de Contact Form 7 con algún sistema de anti SPAM y no tienes lista negra de comentarios no sucede el error, básicamente porque no hay activo ningún servicio anti SPAM 😀
- Si configuras la integración de Contact Form 7 con reCAPTCHA de Google, a veces reCAPTCHA marca TODOS los envíos de formulario como SPAM.
¿Cómo compruebo si Contact Form 7 está marcando los envíos de formulario como SPAM?
Fácil, instala y activa el plugin Flamingo, que almacena en la base de datos los envíos, y te permite verlos en la administración de tu WordPress, y verás que todos los envíos de formulario entran directamente como SPAM.

La caja de estado de Flamingo te informará del motivo de SPAM.

¿Y cómo evito que Contact Form 7 marque como SPAM todos los envíos de formulario?
Vale, sí, vamos a ello ya mismo.
Básicamente, como suelo decir, tienes 3 métodos comprobados (por mi) que funcionan:
- No uses ningún método anti SPAM – Está claro ¿no?. Si no tienes lista negra de comentarios, ni has configurado la integración con reCAPTACHA ni Akismet, y no tienes activo ningún plugin anti SPAM en tu WordPress, no hay método de detección de SPAM activo, y Contact Form 7 por defecto tampoco lo tiene, así que ya está.
- Usa Akismet como método anti SPAM – Configura la integración de Contact Form 7 con Akismet como expliqué en este tutorial, y verás que no falla, tendrás un sistema anti SPAM eficaz sin falsos positivos, no suele fallar.
- Añade un filtro para intentar evitar que se active el filtro de SPAM, el que sea. Tienes 3 opciones, la que te funcione:
Prueba añadiendo este:add_filter('wpcf7_spam', '__return_false');Y si no te funciona entonces este otro:
add_filter('wpcf7_skip_spam_check', '__return_true');O, este:
add_filter( 'wpcf7_submission_has_disallowed_words', '__return_false', 10, 2 );
Pero, sobre todo, no uses reCAPTCHA de Google integrado con Contact Form 7, falla muchísimo, se vuelve medio loco, y los umbrales de SPAM se le disparan por cualquier gilipollez, así que olvídate de este servicio, solo da guerra, en esto y en otras muchas cosas.
¡De nada!
A mi me ha pasado un montón de veces, espero haberte ayudado a encontrar rápido la solución 🙂
¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!







Interesante. Pero puse Flamingo en una web que recibía 3000 formularios al mes y al final lo tuve que borrar, tardaba de 10 a 30 segundos en pulsar el botón de enviar formulario (se quedaba pensando).
Creo que tiene un mal índice el Flamingo y cuando la tabla se llena, su rendimiento cae.
Saludos y siempre felicitaciones por el buen contenido m
Yo no me acuerdo del motivo pero también lo quité hace tiempo, igual por lo que comentas 🙂
¿Y no tiene nada el Contact Form para ver el SPAM sin tener que poner el Flamingo?
Hay otros plugins para almacenar los envíos de CF7, no solo flamingo