Wednesday, 18. May 2011
Piwik, s9y, 404
Um 404er-Fehlermeldungen mit Piwik in Serendipity (s9y) zu überwachen, ist Handarbeit nötig.
Achtung: vorm Ausprobieren unbedingt die index.tpl sichern! Bei Fehlern kann man sich wunderbar das Template zerschießen!
Außerdem wichtig: s9y verwendet in den tpl-Dateien Smarty-Code. Deshalb muss man die eckigen Klammern des Piwik-Codes durch {ldelim} bzw. {rdelim} ersetzen (siehe ldelim, rdelim bei Smarty, evtl. ist es einfacher, am Piwik-Codeanfang {literal} und am Ende {/literal} einzufügen).
Standardmäßig gibt es keine 404er Seite in s9y. Bei ungültigen URLs wird immer die Index-Seite angezeigt. Weil mir das nicht gefällt, habe ich irgendwann in meinem Template folgendes in die index.tpl eingebaut (der Teil mit» if $view == "404"«) bis »{/if}«:
<div id="content">
{if $view == "404"} {* begin 404 *}
<h2>404 - Adresse nicht gefunden<h2>
<p>Ooops, da ist etwas schief gegangen. Der Artikel wurde nicht gefunden, sorry.</p>
<p>Vielleicht hilft ein Blick ins Archiv?</p>
{else}
{$CONTENT}
{/if} {* end 404 *}
</div><!-- end content -->
Wo man das einfügt, hängt natürlich vom verwendeten Template ab. Bei mir steht der Hauptinhalt in einem div names content.
Damit Piwik die 404er-Meldungen überwacht, ist laut FAQ eine Codeergänzung auf der 404er Seite nötig. Weil das bei s9y alles über die index.tpl gesteuert wird, muss man an zwei Stellen basteln.
Im Header muss der Titel angepasst werden, damit man in der Statistik den Seitentitel »Error 404 ...« gezeigt bekommt:
<head>
<title>{if $view == "404"}Error 404 {/if} {$head_title|@default:$blogTitle} ...
und beim Piwik-JS müssen ein paar Zeilen ergänzt werden, auch hier wieder erkennbar am »if $view == "404":«
var piwikTracker = Piwik.getTracker(pkBaseURL + "piwik.php", 1);
{if $view == "404"}{* Abschnitt zum Tracken von 404er Fehlern *}
piwikTracker.setDocumentTitle('404/URL = '+String(document.location.pathname+document.location.search).replace(/\//g,"%2f") + '/From = ' +
String(document.referrer).replace(/\//g,"%2f"));
{/if}
piwikTracker.trackPageView();
Wenn alles geklappt hat, sieht man in Piwik unter "Aktionen / Seitentitel" Daten über den Aufruf der 404-"Seite". Beim Testen dran denken, ob man in seinem Browser eventuell das Piwik-Cookie gesetzt hat (Einstellungen / Benutzereinstellungen), damit die eigenen Seitenaufrufe nicht in der Statistik landen. Und ob man die Statistikaktualisierungsintervalle unter "Einstellungen / Allgemeine Einstellungen" von 10 Sekunden auf einen höheren Wert gestellt hat.

0 Comments to "Piwik, s9y, 404"
0 Trackbacks to "Piwik, s9y, 404"
Add Comment