The New Cult of Dead Cow

Porque el mundo es de los malditos

Mejoras en Referers de Wordpress

0 Commentarios

Una de la cosas que siempre debe cuidar un bloguer son los accesos a su blog. Esto porque nos permite conocer los intereses de nuestros lectores, sitios amigos, quienes nos enlazan entre otra informacion importante.

Yo particularmente uso el plugin referer para realizar ese trabajo, sin embargo cuando estaba analizando los datos el dia de hoy, cai en cuenta de un error ( un pequeño error de diseño ) de grandes implicaciones.

El plugin en mencion, registra las visitas a tu blog y aumenta el contador del mismo si es que vienen de la misma url. El problema con ese sistema, es que si el mes pasado tuviste una visita de barrapunto ( jeje no toy soñando ya antes me han visitado de barrapunto un par de veces :P ) y este mes te hacen otra visita, pues las dos te las contabiliza en el presente mes.

Obviamente esto es una atrocidad de parte de hacer estadísticas. La sencilla solucion es editar la funcion addReferer en el archivo ref_db.php. Debo anotar que esto no es considerado un error por el desarrollador sino una feature ( seguro se copio el concepto de Micro$oft :P ), pero para mi no me cae muy bien esa feature.

El Archivo original dice

    $url = $this->escape(strtolower($ref['url']));
    $count = $this->escape($count);

    if($date === null)
        $date = 'NOW()';
    else
        $date = "'" . $this->escape($date) . "'";

    $update = "UPDATE `$this->referers` SET `count` = `count` + '$count',

                        `date` = $date WHERE `url` = '$url'";


Eso lo modificamos por:

    if($date === null)
        $date = 'NOW()';
    else
        $date = "'" . $this->escape($date) . "'";

    $datearray = (getdate($date));
    $month = $datearray["mon"];
    $day = $datearray["mday"];
   
$year = $datearray["year"];
    $update = "UPDATE `$this->referers` SET `count` = `count` + '$count',
                        `date` = $date WHERE `url` = '$url' and day(date)=$day and month(date)=$month                         and year(date)=$year";



Con este pequeño cambio, cada vez que una nueva visita venga de la misma url solo incrementara el contador cuando se produzca el mismo dia, de no ser asi se creara un nuevo registro para esa visita.




Technorati Tags: , , ,

Leave a Reply