BuddyPress, WordPress y bbPress

Blog

Disminuye o elimina el spam/splog en BuddyPress y WordPress con red activada

 

EDITO: Después de mucho probar cosas, he creado quizás uno de los mejores plugins anti-splog anti-spam de usuarios que pueda existir en estos momentos. Su nombre es WangGuard y lo podéis descargar desde el repositorio de WordPress. Más información en esta entrada.


Llevo mucho tiempo luchando contra esta peste llamada Splog, que es el registro de usuarios en comunidades de blogs y redes sociales creadas mediante BuddyPress para realizar spam y splog.

Le he estado dando muchas vueltas y el problema no se solucionaba fácilmente.

El spam/splog en WordPress con red activada, es relativamente sencillo de atajar, ya que solo hay que ir añadiendo dominios de Splogers a “Super Admin” –> “Opciones” –> “Dominios de correo electrónico no permitidos” y añadir todos los dominios que queremos bloquear. El problema real está en BuddyPress.

Hace un par de días, descubrí que Buddypress no usa este listado que creamos en la administración de WordPress, así que son auténticos coladeros que son muy difíciles de parar. Me puede ha mirar un poco el código tanto del registro de WordPress como el de Buddypress para ver dónde estaba la diferencia y felizmente he dado con ello.

Ya he abierto un ticket en el trac de BuddyPress pidiendo que añadan la línea, aunque siendo realista me parece que no lo harán antes de la versión 1.3, así que debereis realizar vosotros mismos el hack si queréis vivir tranquilos.

Lo que debéis hacer es editar el archivo /wp-content/plugins/buddypress/bp-core/bp-core-signup.php

En este archivo buscáis la línea que pone:

[php]
if ( !is_email( $user_email ) )
$errors->add( ‘user_email’, __( ‘Please check your email address.’, ‘buddypress’ ) );
[/php]

justo debajo de esta, añadís esta otra:

[php]
if ( is_email_address_unsafe( $user_email ) )
$errors->add(‘user_email’, __(‘You cannot use that email address to signup. We are having problems with them blocking some of our email. Please use another email provider.’));
[/php]

Una vez realizada esta modificación, BuddyPress comenzará a usar el listado de dominios no permitidos.

Como ya hace mucho tiempo que estoy con este tema, para facilitaros la vida os dejo un listado de 291 304 dominios que son sploggers.

 

Descargaros el archivo, los descomprimís, y copiáis todo el listado que encontrareis en su interior y lo pegáis en “Dominios de correo electrónico no permitidos”

 

Una vez que hayáis realizado las modificaciones, hacer la prueba de registraros con cualquiera de esos dominios y veréis que ya no os deja registraros. Probad a registraros con cualquier otro email para comprobar que todo funcione correctamente.

12 Comentarios