Seite 1 von 1

Ich will mich nicht selber zählen

Verfasst: 10.08.2014 11:20
von mhanft
Hallo,

in einem Forum gibts ja in der Spalte "Zugriffe" die Anzahl, wie oft der Thread gelesen wurde. Mich als Admin interessiert da aber eigentlich nur, wie oft andere User das alles lesen - dass ich da selber 73mal zur Kontrolle irgendwo reingeschaut habe, verfälscht eher die Statistik... bei Web-Analysen (Piwik, Awstats & Co.) kann man seine eigene IP-Adresse angeben, die dann von allen Analysen ausgeschlossen wird. Geht sowas mit phpBB auch? (Alternativ zur IP-Adresse ginge hier ja auch Username, ich bin ja immer eingeloggt.)

Danke schon mal...

Re: Ich will mich nicht selber zählen

Verfasst: 10.08.2014 11:54
von Dr.Death
Hi,

versuche das mal: (ungetestet)

ÖFFNE: viewtopic.php

FINDE:

Code: Alles auswählen

// Update topic view and if necessary attachment view counters ... but only for humans and if this is the first 'page view'
if (isset($user->data['session_page']) && !$user->data['is_bot'] && (strpos($user->data['session_page'], '&t=' . $topic_id) === false || isset($user->data['session_created'])))
ERSETZE MIT:

Code: Alles auswählen

// Update topic view and if necessary attachment view counters ... but only for humans and if this is the first 'page view'
if (($user->data['user_id'] <> 4711) && isset($user->data['session_page']) && !$user->data['is_bot'] && (strpos($user->data['session_page'], '&t=' . $topic_id) === false || isset($user->data['session_created'])))

Die Ziffer 4711 musst Du dann noch mit Deiner eigenen User ID austauschen..... ich schätze mal Deine User ID ist --> 2

Re: Ich will mich nicht selber zählen

Verfasst: 10.08.2014 12:08
von mhanft
Danke für die superschnelle Antwort - funktioniert! :grin:

Damit man da nicht so im Code rumfummeln muss, schlage ich vor, das als eine konfigurierbare Admin-Menü-Option einzubauen (nach IP-Adresse und/oder Username) - oder bin ich etwa der einzige, der so eine Funktion gerne hätte? :-?

Re: Ich will mich nicht selber zählen

Verfasst: 10.08.2014 12:11
von Dr.Death
ja, bist Du :-)

Re: Ich will mich nicht selber zählen

Verfasst: 10.08.2014 12:12
von mhanft
Ok, dann ziehe ich meinen Wunsch hiermit zurück :lol:

(muss dann bloß, wenn das Zeug von Updates überschrieben wird, dran denken, das jedesmal wieder reinzupfriemeln - aber das krieg ich hin)

Re: Ich will mich nicht selber zählen

Verfasst: 10.08.2014 14:46
von Dr.Death
Beim Update wird das nicht überschrieben.... nur dann, wenn genau in dieser Zeile auch eine Änderung stattfindet.

Re: Ich will mich nicht selber zählen

Verfasst: 10.08.2014 15:05
von mhanft
Dr.Death hat geschrieben:Beim Update wird das nicht überschrieben.... nur dann, wenn genau in dieser Zeile auch eine Änderung stattfindet.
Hmmm... ich fürchte doch, wenn man das Update über den Paketmanager seiner Linux-Distribution macht (was mir lieber ist, weil dann die ganzen Paketverwaltungsinformationen zusammenpassen). Aber das macht nix, so individuelle Anpassungen hab ich auch schon bei anderen Paketen gemacht, und die habens auch alle überlebt :grin:

Re: Ich will mich nicht selber zählen

Verfasst: 10.08.2014 23:38
von HabNurNeFrage
Hi Leute,

prima Thread. Sicher würden einige Betreiber gerne ihre Pflichtleser (Mods und/oder Admins) vom PageView- und AttachmentViewCounter ausschließen.

Bei uns habe ich das obige Snippet eben folgendermaßen umgesetzt:

Folgende Stelle in viewtopic.php raussuchen:

Code: Alles auswählen

// Update topic view and if necessary attachment view counters ... but only for humans and if this is the first 'page view'
if (isset($user->data['session_page']) && !$user->data['is_bot'] && (strpos($user->data['session_page'], '&t=' . $topic_id) === false || isset($user->data['session_created'])))
{
    $sql = 'UPDATE ' . TOPICS_TABLE . '
        SET topic_views = topic_views + 1, topic_last_view_time = ' . time() . "
        WHERE topic_id = $topic_id";
    $db->sql_query($sql);

    // Update the attachment download counts
    if (sizeof($update_count))
    {
        $sql = 'UPDATE ' . ATTACHMENTS_TABLE . '
            SET download_count = download_count + 1
            WHERE ' . $db->sql_in_set('attach_id', array_unique($update_count));
        $db->sql_query($sql);
    }
} 
VOR dem Fund einfügen:

Code: Alles auswählen

if(!$auth->acl_get('m_'))
{ 
NACH dem Fund einfügen: }

So kann die Original-Stelle bei späteren Updates problemlos geändert werden und alle Moderatoren- und Adminklicks werden nicht mehr gezählt...

LG

PS: Nur Admins ausnehmen wäre if(!$auth->acl_get('a_'))