Pero gracias a la arquitectura flexible de WordPress, existen numerosas formas de prevenirlo. En este artículo, repasaremos 6 fáciles y eficientes métodos para lograr tener un blog en WordPress libre de spam.
1. Akismet, el Amo Entre los Plugins Antispam
Lo que lo previene: combate tanto el spam automatizado como el spam manual.
Si vamos a hablar sobre métodos para combatir los comentarios spam, sería una vergüenza que no empezásemos con el más popular :). Bueno, es el más popular porque viene integrado en el paquete de WordPress, pero además también tiene reputación por su gran calidad.
Según su web, ellos mismos ejecutan cientos de pruebas (con sus propios servidores) cuando se publica un comentario en tu blog. Si las pruebas dicen «síiii», el comentario se publica, y si dicen «noo», el comentario va directo a la carpeta de «spam».
Sólo tienes que inscribirte mediante un sencillo formulario (podrás elegir entre la versión gratuita o la de pago) y comenzar a utilizar el plugin tan pronto como ingreses la clave de la API en la página de las opciones.
2. Deshabilitar el Acceso Directo a wp-comments-post.php a Través de .htaccess
Lo que lo evita: el spam automatizado
Siempre podrás desactivar el acceso directo al archivo wp-comments-post.php añadiendo este código al archivo .htaccess:
1
2
3
4
5
6
7
8
|
<IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{REQUEST_METHOD} POST RewriteCond %{REQUEST_URI} .wp-comments-post.php* RewriteCond %{HTTP_REFERER} !.*yourdomainname.* [OR] RewriteCond %{HTTP_USER_AGENT} ^$ RewriteRule (.*) ^http: // %{REMOTE_ADDR}/$ [R=301,L] < /IfModule > |
(Fuente: Cats Who Code)
La lógica es simple: Si el «referrer» no proviene de tu blog (no olvides cambiar la parte ¡»yourdomainname»!), no le permitirá el acceso al archivo. Otra buena medida que aporta este código es que los robots que se usan para crear spam no consumirán ni aumentarán el uso de los recursos de tu servidor, ya que no podrán acceder al archivo.
3. El Plugin «Cookies for Comments«
Lo que lo previene: tanto el spam automático como el spam manual.
Sé que debo permanecer imparcial respecto a estos plugins anti-spam, pero el plugin Cookies for Comments, ¡es sin duda el mejor que he usado!
Según el autor del plugin, Donncha O Caoimh:
«El plugin añade una hoja de estilo o una imagen al código fuente html de tu blog. Cuando un navegador carga esa hoja de estilo o imagen se almacena una cookie. Si entonces ese usuario deja un comentario, se comprueba gracias a la cookie que procede de un usuario humano. Si no existe, el comentario será marcado como spam.»
Tan simple como eso. Más aún, el plugin también comprueba la velocidad con la que es enviado el comentario. De forma que, por ejemplo, si el comentario es enviado dentro de un periodo de 3 segundos desde que se cargó la página del post en cuestión, hay bastantes probabilidades de que sea spam. Puedes establecer este intervalo de tiempo desde la página de opciones, junto con la opción para gestionar los «comentarios atrapados», puedes definirlos como «spam» o borrarlos directamente.
4. Usar un Sistema de Comentarios Diferente (como Disqus o Jetpack)
Lo que evita: el spam automatizado.
Hay una cosa genial en los sistemas para comentarios: ¡los robots de spam generalmente no se «mezclan» con ellos en absoluto! Bueno, probablemente, estos robots «no puedan» hacer nada porque los sistemas de comentarios se cargan dentro de un iFrame, o podría deberse a algo más. No sé.
De todos modos, podrías y deberías usar otros sistemas para los comentarios si estás recibiendo un montón de spam o un montón de comentarios legítimos de ese estilo. Tienen más funcionalidades, buen diseño, hacen que los visitantes se sientan felices y si volvemos al tema que nos ocupa, en su mayoría son inmunes al spam.
Te puedo recomendar Jetpack, Disqus y Facebook Comments.
5. Utilizar una Casilla para Habilitar el Botón Enviar
Lo que lo previene: el spam automatizado.
De nuevo, esta no es una medida contundente para evitar el spam, pero podría ayudarte a resolver tus problemas y ciertamente no perjudica a las personas que quieran hacer comentarios legítimos.
En primer lugar, es necesario añadir una casilla de verificación al formulario de los comentarios de tu tema (que lo más probable es que se corresponda con el archivo de plantilla comments.php), así:
1
|
< label for = "enable" >< input type = "checkbox" name = "enable" id = "enable" onClick = "apply()" class = "enable_checkbox" > Check this box to enable the send button</ label > |
Sería buena idea añadirla justo sobre el botón de envío. Por cierto, anota el valor del atributo «nombre» del botón Enviar y del del elemento <form>
. Si no tienes un atributo «nombre» para el elemento <form>
, agrégalo con el valor «commentform».
A continuación, agrega este código al archivo header.php, dentro del elemento <head>
1
2
3
4
5
6
7
8
9
|
< script type = "text/javascript" > function apply() { var form_submit = document.commentform.submit; var form_checkbox = document.commentform.enable; form_submit.disabled=true; if(form_checkbox.checked==true) {form_submit.disabled=false;} if(form_checkbox.checked==false) {form_submit.enabled=false;} } </ script > |
Cambia las instancias «commentform» y «submit» si tienes valores name = "..."
diferentes para el elemento <form>
y/o el botón de envío de los comentarios.
¡Eso es todo! Si necesitas aplicar estilo a la casilla de verificación, dispones de una clase denominada «enable_checkbox
«.
Lo que te queda por leer:
Deja una respuesta