Statify Javascript

Spaziergang in Lembeck
Geschätzte Lesezeit: 2 Minuten
Statify.

Wer es nicht weiss: bei Statify handelt es sich um ein Statistikplugin. Dieses beschränkt sich auf das Wesentliche und zeichnet ’nur‘ die Seitenabrufe (Anzahl und welche Seiten)auf.
Dies macht Statify datenschutzrechtlich unbedenklicher als Google Analytics oder Piwik.
Da die IP Adressen der Besucher nicht aufgezeichnet werden, lassen sich keinerlei Rückschlüsse auf Herkunft des Besuchers oder gar auf personenbezogene Daten ziehen.
Ich werde das Plugin in einem anderen Beitrag noch detaillierter beschreiben.  In diesem Beitrag geht es um die Lösung ‚meines‘ Javascript Problems mit dem Plugin.

Caching

Für den Fall, dass ein Caching Plugin eingesetzt wird, bietet das Plugin die Möglichkeit das Tracking mittels Javascript vorzunehmen.
Genau das sorgte bei mir für Probleme. Aus ungeklärten Gründen verschwand bei mir der Javascript Code  aus dem Quelltext und es wurden keine Besuche mehr aufgezeichnet.
Der Code war einige Zeit vorhanden, und verschwand dann nach einigen Seitenaufrufen.
Eine intensive Recherche brachte leider keine Lösung. Hierzu war etwas Handarbeit an einer Datei nötig.
Ich vermute die Kombination der von mir eingesetzten Plugins macht hier in Verbindung mit Statify Probleme.

Backup anlegen

Wie immer gilt:
Alle Änderungen erfolgen auf eigene Gefahr. Bitte legt vorher ein Backup der Plugin Daten an. Zum Beispiel indem ihr die Plugin Dateien per ftp auf euren Rechner übertragt.

Der Javscript Code für das Tracking befindet sich in der Datei: js_snippet.view.php. Diese befindet sich im Unterverzeichnis ‚views‘ des Plugins. Für den Fall das ihr nicht wisst wo WordPress die Plugin Daten speichert:
Diese befinden sich in \wp_conten\plugins eurer WordPress Installation.
Ihr solltet also mindesten die Datei ‚js_snippet.view.php‘ sichern.

Los geht’s
  • Als erstes wird der komplette Cache gelöscht und der Quelltext einer Seite angezeigt.
    Dort nach dem Code von Statify suchen.
    Dieser sieht bei mir wie folgt aus:<script type="text/javascript">(function () {
    var e = document.createElement('script'),
    s = document.getElementsByTagName('script')[0],
    r = encodeURIComponent(document.referrer),
    t = encodeURIComponent(location.pathname + location.search),
    p = '?statify_referrer=' + r + '&statify_target=' + t;e.async = true;
    e.type = 'text/javascript';
    e.src = "/" + p;s.parentNode.insertBefore(e, s);
    })();</script>
  • Nun öffnet ihr die Datei ‚js_snippet.view.php‘ in einem Texteditor.
    Aus dieser Datei löscht ihr nun alles ausser dem nachfolgenden Code:<?php
    /** Quit */
    class_exists( 'Statify' ) || exit; ?>Anschliessend ladet ihr die Datei wieder auf den Server.
  • Idealerweise bietet euer Theme die Möglichkeit eigenen Code zum Footer hinzuzufügen.
    Dort fügt ihr den aus dem Quelltext herauskopierten Javascript Code ein.
    Bietet euer Theme diese Möglichkeit nicht, sollte der Workaround auch klappen wenn ihr den Javascript Code in die Footer Datei des Themes direkt vor dem abschliessenden Body Tag einfügt.
Nachteile

Das Editieren der Statify muss leider immer neu geschehen wenn es eine Aktualisierung des Plugins gibt. Ausser natürlich das Problem ist mit einem Updaten behoben worden.
Dann ist dieser Artikel auch hinfällig :-)
Passt ihr die Footer Datei des Themes an, muss diese logischerweise nach einem Theme Update auch angepasst werden. Ggf. solltet ihr in diesem Fall über eigenes Child Theme nachdenken.

Mehr Informationen zu CMS Systemen gibt es hier.

 

Ralf

Jahrgang 1962, lebt mit Frau, Katzen und Hund an der Grenze Münsterland / Ruhrgebeit.

2 Antworten

  1. Ernst sagt:

    Mit der aktuellen Version funzt Statify auch mit aktiviertem Cache!
    Modifizieren brauchte ich da nichts.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Ich bin mit der Verarbeitung meiner übermittelten Daten einverstanden.