Statistieken segmenteren op publicatiedatum

7 May, 2010

in Analyse

Elke keer als ik een top 3 maak met de artikelen van de maand ervoor zit ik me af te vragen welke artikelen ik ook alweer geschreven heb in die maand. Zou het niet handig zijn om direct door de statistieken van je artikelen te kunnen scrollen gebaseerd op datum van publicatie. Zoiezo vraag ik me af hoe de verdeling van mijn bezoekers is tussen oude en nieuwe artikelen.

Laatst realiseerde ik me ineens dat er een mogelijkheid is om dit voor elkaar te krijgen, namelijk via custom variables in Google Analytics. Je kan zo aan een pagina extra variabelen meegeven die je vervolgens kan inzien in je Google Analytics rapporten.

Wat ik wil doen is aan elke pagina een jaartal en een maand (datum van publiceren) meegeven zodat ik later de statistieken kan bekijken per publicatieperiode van een artikel. Hiermee hoop ik inzicht te krijgen hoeveel van de bezoekers nieuwe artikelen lezen en hoeveel van mijn bezoekers alleen voor de oude artikelen komen.

Asynchrone trackingcode en Custom variables

Maar goed, dat is makkelijker gezegd dan gedaan. Laten we eerst maar eens kijken welke code nodig is om die variabelen mee te geven aan blogposts. Vervolgens ga ik dat verwerken in mijn Wordpress template. Dan hoop ik later een blogpost te kunnen schrijven met een interpretatie van de eerste gegevens.

Er zijn 5 slots waar je variabelen in kan zetten. Je kan maar 1 variabele per slot opnemen. Vervolgens kun je drie soorten variabelen opnemen:

  1. Bezoeker variabelen
    Je zou allerlei informatie die hoort bij een bezoeker kunnen meten.Misschien heb je wel een login systeem waar allerlei informatie over een bezoeker instaat zoals leeftijd, geslacht, etc. Als je een lidmaatschaps site hebt zou je ook kunnen meten hoe verschillende lidmaatschapsprofielen je site gebruiken.
  2. Sessie variabelen
    Dit zijn de variabelen die optreden gedurende een sessie. Je zou een onderscheid kunnen maken tussen een ingelogde en een niet ingelogde sessie. Maar ook kunnen bijhouden hoe sessies gaan van mensen die iets aan een winkelwagen toevoegen of juist verwijderen.
  3. Pagina variabelen
    Je kan een aantal variabelen aan een pagina plakken. Zo kun je bijvoorbeeld bijhouden in welke categorie een artikel valt of bijvoorbeeld de publicatiedatum.

Ik ga gebruik maken van de pagina variabelen en 2 slots vullen.

  1. Jaar
    _setCustomVar(
    1,                 //Slot #1
    'Jaartal',         //sleutel
    '2010',            //waarde
    3                  //Scope (1=bezoeker, 2= sessie en 3=pagina)
    )
  2. Maand
    _setCustomVar(
    2,                 //Slot #2
    'Maand',           //sleutel
    'May-10',          //waarde
    3                  //Scope (1=bezoeker, 2= sessie en 3=pagina)
    )

Aangezien ik de asynchrone Google code gebruik komt dat neer op de volgende code die ik kan toevoegen aan een blogpost.

<script type="text/javascript">

var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-xxxxxx-x']);
_gaq.push(['_setCustomVar', 1, 'Jaar', '2010', 3]);
_gaq.push(['_setCustomVar', 2, 'Maand', 'May-10', 3]);

_gaq.push(['_trackPageview']);

(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();

</script>

Custom variables toevoegen aan Wordpress

Vervolgens is de vraag hoe ik deze code ga toevoegen aan mijn Wordpress template. Op dit moment voeg ik de Google Analytics code toe via het functions.php bestand. Ik heb een functie gemaakt die de GA code print en vervolgens toevoegt aan Wordpress. Hieronder staat een voorbeeld zonder custom variables.

function add_ga_async()
{
?>
<script type="text/javascript">

var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-xxxxx-x']);
_gaq.push(['_trackPageview']);

(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();

</script>

<?php

}
add_filter('wp_head', 'add_ga_async');

Via de volgende code haal ik de publicatiedatum van een blogpost op en selecteer daaruit  het jaar en de maand van publicatie. Deze zet ik vervolgens in het juiste format. Aangezien ik dit alleen wil bijhouden voor blogposts voeg ik een conditional tag toe (is_single).

function add_ga_async()
{
$customvar_ga =' ';
global $post;
if(is_single($post)) {

$customvar_ga= "

_gaq.push(['_setCustomVar', 1, 'Jaar', '".mysql2date('Y',$post->post_date)."', 3]);
_gaq.push(['_setCustomVar', 2, 'Maand', '".mysql2date('F',$post->post_date)."-".mysql2date('y',$post->post_date)."', 3]);
";
}?>

<script type="text/javascript">

var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-xxxxxx-x']);
<?php if($customvar_ga) {echo $customvar_ga; } ?>
_gaq.push(['_trackPageview']);

(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();

</script>

<?php

}
add_filter('wp_head', 'add_ga_async');

Nu maar hopen dat ik snel de resultaten kan inzien.  Ik ben benieuwd want totdat ik die eerste resultaten zie weet ik ook niet zeker of bovenstaande goed is. Het schijnt een tijdje te duren, even afwachten dus.

Binnenkort volgt een bericht met de resultaten.

UPDATE:In de eerste opzet hield ik alleen jaartal en maand bij. Dat betekende ook dat het maandtotaal meerdere jaren besloeg. Oftewel, january besloeg de jaren 2006 - 2010. Dat maakt het niet duidelijker. Ik heb de code nu iets aangepast zodat achter de maand een streepje en de laatste 2 cijfers van het jaar worden toegevoegd. In plaats van "May" staat er nu "May-10". Zo kun je precies zien in welke maand je schrijverskunsten de meeste aanhang hebben getrokken.

Blijf op de hoogte

Vond je deze informatie interessant, zorg dan dat je het laatste nieuws en de beste kortingen via onze nieuwsbrief ontvangt. Schrijf je nu in >>>

Je kan je natuurlijk ook op onze RSS feed inschrijven en het nieuws volgen via je eigen RSS Reader.

{ 0 reacties }

Previous post:

Next post: