Bře 05

JQuery a Google Analytics, silná dvojka

Určitě jste už slyšely o Javascriptovom frameworku JQuery. Je to silná a inovativní knižnice, která už v základní verzi bez jakýchkoliv rozšíření (kterých jsou mimochodem stovky) dokáže dost podstatně ulehčit programátorovi život.

Google Analytics představovat nemusím, každý správný webmaster, který to myslí jen trošku vážně ho určitě používá na svých stránkách. Jeho hlavní výhodou je cena (zdarma) a velké množství přehledů, tabulek a grafů o návštěvnicích vašich stránek.

Zkombinováním těchto dvou služeb dostane webmaster do ruky silný nástroj na skutečně cílené monitorování návštěvnosti bez nutnosti (velkého) zásahu do už napsaného kódu. Ukažme si praktický příklad na defaultní instalaci WordPressu 2.3.3 (dodává se spolu s jQuery verzí 1.1.4, i když v době psaní tohoto článku je nejnovější verze 1.2.3).

Chceme monitorovat odchozí linky z už napsaných článků a článků je napsaných už velké množství. Zde je jednoduchý postup bez nutnosti zásahu do naspaného textu:

  • Vytvoříme si cíl, „goal“ v účtu Google Analytics, pojmenujme si ho třeba „/out“
  • Do záhlaví WordPress šablony vložíme následovný kód (do HEAD před BODY):
    <script src="/wp-includes/js/jquery/jquery.js?ver=1.1.4" type="text/javascript" />
    <script type="text/javascript">
    <!--
      jQuery(document).ready(function(){
        jQuery("div.post a").click(function(){
          urchinTracker("/out");
        });
      });
    //-->
    </script>
    

Vysvětlení: předpokládáme, že články jsou uloženy v tagu DIV s nastaveným class=“post“. Pomocí JQuery nastavíme všem odkazům v těchto blocích event handler onclick na funkci, která zavolá Google Analytics kód „urchinTracker(‚/out‘);“.

Šablonu uložíme a hotovo! JQuery se nám automaticky postará o korektní zavolání Analytics kódu a my nemusíme přepisovat každý článek a vkládat „onclick“ atributy do každého odkazu. Jako bonus navíc dostaneme kompatibilitu ve všech používaných prohlížečích.

3
comments

3 comments!!!

  1. Pavel Jašek napsal:

    Chápu, že pro určité účely stačí použití takového jednoduchého goalu, v praxi určitě bude lepší vědět i jaký odkaz byl použit, tedy k řetězci „/out“ připojit i cílovou adresu a posléze si udělat goal s regexpem na kontrolu obsaženého počátku řetězce.

    Jinak je trochu smutné, že knihovna je poměrně obrovská (což se při takové míře robustnosti dá chápat), ovšem určitě to nestojí za to inkludovat ji jenom kvůli kontrole odchozích odkazů a podobným cílům. Věřím (ač jsem to nehledal), že bude existovat i objemově méně náročné javasriptové řešení na označení elementů.

  2. Fred napsal:

    Jak říká Pavel Jašek, btw když pohledáš urchinTracker(this.href) musí vylézt hotové řešení http://www.dicabrio.com/javascript/unobtrusive-google-analytics.php

  3. admin napsal:

    to Pavel Jašek, Fred:
    Díky za nápad s this.ref, takto jsem o tom neuvažoval, ale je to lepší řešení ako jednodušší ‚/out‘.

    Vycházel jsem z toho, že jQuery poznám a JavaScript je prom mně zatím jedna velká neznáma (nekompatibilita mezi prohlížeči). Toto řešení jsem měl hotové za 5 minut a nemusel jsem ho moc testovat – řídím se tím, že čím míň kódu tím líp.

Reply