
Cicklow
Admin
Épsilon
Verificado
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
¡Usuario popular!
Suscripción a IA

Esto es solo para que visitemos su sitio... en el foro se ha hablado bastante sobre esto, cabe destacar que el plugin esta en fase BETA. Como funciona este plugin?...
Pues lo que hace es descargar desde
PHP:
https://raw.githubusercontent.com/piwik/referrer-spam-blacklist/master/spammers.txt
Cada 3 dias actualiza su base de datos haciendo que se mantenga al dia la base de datos.
Al ser la 1° ves que ejecutamos el plugin, tendremos que ir a Opciones->Enlaces permanentes->Guardar, eso hace que se guarden los cambios echos por el plugin (no se porque WP no lo hace una ves que se activo el plugin, pero asi es WP... jejeje)
Por ahora pueden descargar el plugin desde: (Estoy esperando que wordpress.org me habilite el plugin en el repertorio y asi mantener actualizado el plugin desde ahí).
Insertar CODE, HTML o PHP:
http://test.cicklow.me/ForoBeta/BlockSpam/ForoBetaBlockSpam.zip
Y como no podia faltar explicare el code del plugin :encouragement:
PHP:
date_default_timezone_set('UTC'); //Fecha en formato UTC
if ( ! defined( 'ABSPATH' ) ) exit; // Salimos si acceden al plugin directamente..
add_action( 'init', 'FB_inicio' );
add_filter('mod_rewrite_rules', 'FB_control');
Luego agregamos un hook al inicio de WP, esto llama a la funcion FB_inicio (la cual se encarga de verificar el cache del spam) y agregamos otro hook el cual es para agregar las reglas al .htaccess y bloquear los referidos...
Porque desde .htaccess?, porque los plugin de cache interfieren con el plugin, haciendo que el cache se genere antes de poder bloquear el referido (ya que en un inicio el plugin verificaba los referidos desde el mismo plugin y no desde .htaccess, pero el cache no dejaba que se muestre otro resultado al ser bloqueado)...
PHP:
function FB_inicio(){
$VERCRON = get_option('fecha_cron','0'); //esto servira para controlar cuantos dias pasaron desde el update de los spamers
$INST = get_option('fb_instalado','0'); //instalado o no el plugin
$CANTD = 3; //cada 3 dias descargara el cron.
if($VERCRON==0 || $INST==0){
add_option('fecha_cron',date('Y-m-d',time())); //Creamos la opcion en la BD
$VERCRON = date('Y-m-d',time());
add_option('fb_instalado','1');
}
$datetime1 = new DateTime($VERCRON);
$datetime2 = new DateTime(date('Y-m-d',time()));
$DIAS = $datetime1->diff($datetime2)->days;
$DIR = plugin_dir_path( __FILE__ );
if($DIAS>=$CANTD || ($DIAS==0 && $INST==0)){
update_option('fecha_cron',date('Y-m-d',time()));
$SPAMERS = @file_get_contents("https://raw.githubusercontent.com/piwik/referrer-spam-blacklist/master/spammers.txt"); //Listado de spamers
if($SPAMERS !=""){
file_put_contents($DIR."spamers.txt",$SPAMERS);
}
}
}
Esta funcion se encarga de verificar si ya se instalo el plugin y los dias entre cache y cache, lo que se hace es guardar una fecha en la base de datos de las opciones de WP y controlar esa fecha con la fecha actual del sistema, luego hacer unos calculos de cuantos dias pasaron entre esas fecha y ver si pasaron mas de 3 dias, descargar el cache nuevamente.
PHP:
function FB_control($rules){
$DIR = plugin_dir_path( __FILE__ );
$SPAMERS = file_get_contents($DIR."spamers.txt");
$VERSPAM = preg_split("|[\r\n]+|i", $SPAMERS, -1, PREG_SPLIT_NO_EMPTY);
$ADDSPAM = "";
foreach($VERSPAM as $VS){
$ADDSPAM.="RewriteCond %{HTTP_REFERER} ".$VS." [NC,OR]\n";
}
$ADDSPAM = substr($ADDSPAM, 0, strlen($ADDSPAM)-5)."]\n";
$ADDSPAM = "\n# INICIO ForoBeta BlockSpam\n".$ADDSPAM."RewriteRule .* - [F]\n# FIN ForoBeta BlockSpam\n\n";
return $ADDSPAM.$rules;
}
Esta funcion se encarga de abrir el cache (un archivo txt) y generar codigo a usar en .htaccess
Bien, que pasa sino quiero usar un plugin y quiero editar el .htaccess manualmente (Puedes usar https://wordpress.org/plugins/wp-htaccess-editor/ para editar .htaccess desde WP, o usar FTP, o el administrador de archivos de cpanel...)... Pues no hay ningun problema, solo entra a esta URL:
Insertar CODE, HTML o PHP:
http://test.cicklow.me/ForoBeta/BlockSpam/
Copias todo el codigo que te da y lo colocar en tu .htaccess...
Si usan Wordfence, puede que les de aviso de que el cache del listado de sitios spam contenga URL bloqueadas...

Esto se debe a que hay url que fueron bloqueadas por google, pero no nos afecta en nada, ya que lo que hacemos es bloquear el referido desde ese sitio. Solo le damos clic en: Always ignore this file. y listo 🙂
Avisen cualquier error! Saludos!
Última edición: