MyBB [Guida 1.8] Bloccare contatore visite nei thread per i spiders/bot MyBB

Stato
Discussione chiusa ad ulteriori risposte.

Samaritan

Utente Palladium
11 Agosto 2011
4,476
272
342
1,476
Spesso piccoli forum con pochi membri, si ritrova il contatore delle visualizzazioni delle discussioni con valori proporzionalmente esagerati.

Questo fatto è dovuto ai spiders/bots che visualizzano le discussioni, con questa guida sarà possibile escludere il conteggio delle visualizzazioni da parte dei bots/spiders che abbiamo nel nostro sistema, questa modifica non andrà ad influire il conteggio delle visite degli utenti.

Accediamo al nostro host tramite FileZilla e cerchiamo il file "showthread.php", apriamolo con un editor di testo tipo "NotePad ++" e al suo interno andremo cerchiamo questo codice:

Codice:
if($mybb->settings['delayedthreadviews'] == 1)
{
$db->shutdown_query("INSERT INTO ".TABLE_PREFIX."threadviews (tid) VALUES('{$tid}')");
}
else
{
$db->shutdown_query("UPDATE ".TABLE_PREFIX."threads SET views=views+1 WHERE tid='{$tid}'");
}

o sostituiamo con questo:

Codice:
if($mybb->settings['delayedthreadviews'] == 1 && $session->is_spider == false)
{
$db->shutdown_query("INSERT INTO ".TABLE_PREFIX."threadviews (tid) VALUES('{$tid}')");
}
elseif($session->is_spider == false)
{
$db->shutdown_query("UPDATE ".TABLE_PREFIX."threads SET views=views+1 WHERE tid='{$tid}'");
}

Per far si che il contatore non aumenti anche con le visualizzazioni del creatore (autore) dello stessa discussione, ci basterà sostituire il primo codice con questo:

Codice:
if(!$session->is_spider && $mybb->user['uid'] != $thread['uid'])
{
  if($mybb->settings['delayedthreadviews'])
  {
      $db->shutdown_query("INSERT INTO ".TABLE_PREFIX."threadviews (tid) VALUES('{$tid}')");
  }
  else
  {
      $db->shutdown_query("UPDATE ".TABLE_PREFIX."threads SET views=views+1 WHERE tid='{$tid}'");
  }
}

Adesso se volessimo azzerare il conteggio di tutte le discussioni al numero di visualizzazioni pari a 0, ci basterà lanciare questa query nel PhpMyAdmin:

Codice:
UPDATE `mybb_threads` SET `views` = '0'

Adesso accedete al vostro sito https://it.altervista.org/ e adesso seguite le immagini

image-1-63E3_58D00723.png


image-2-C95C_58D0088D.png
 
Stato
Discussione chiusa ad ulteriori risposte.