Base Route s další podmínkou

Rozšířené měření Google Analytics.

Využití

Tato route funguje stejně jako BaseRoute, aby došlo ke shodě musí se shodovat URL před a navíc definovaná funkce vrátit hodnotu true. Využít lze nejčastěji po odeslání formuláře, kdy se nemění odeslaná URL, pouze se vypíše potvrzovací hláška. Takovou akci pak nelze nastavit jako cíl. Route s podmínkou umožňuje kontrolovat přítomnost potvrzovací hlášky na stránce a podle toho změnit trackovanou URL, např. místo

www.hracky.com/kontakt

umožňuje odesílat

www.hracky.com/kontakt/odeslano

Takovou URL již Google Analytics jako cíl nastavit lze.

Dokumentace

Routu je potřeba vytvořit a předat objetku _ga pomocí metody addRoute. Vytvoření routy řešící výše uvedený případ může vypadat například takto:

<script type="text/javascript" src="/analytics.js"></script>
 <script type="text/javascript">
     var func = function(currentUrl) {
         return true|false;
     }
     var categorySearch = new _gas.route.ConditionOnUrl('/search/term/$1/category/$2', '/search?term=$1&category=$2', func);
     
     _gas.addRoute(categorySearch);
     _gas.push(['_setDomainName', '.ga-script.org']);
     _gas.create('UA-123456-7', 't1');
 </script>

Zpracování této routy probíhá až po načtení celého dokumentu.

Parametry

Kontstruktor route má 4 parametry, první tři jsou povinné.

  • původní URL - reálná URL adresa. Může obsahovat značky začínající znakem $, za kterým následjí čísla - např. $1, $2 atd.. Tyto části URL se považují za řetězec bez znaků /, ? a &. Tyto části URL jsou pak brány řetězce pro nahrazení v nové URL.
  • nová URL - virtuální URL, která je odesílaná na server Google Analytics. Lze v ní využít stejné značky jako v původní URL. Tyto značky pak budou nahrazeny hodnotami získanými z odpovídajících míst původní URL.
  • funkce s podmínkou - vrací true pokud se má route shodovat, jinak false. Route se shoduje pouze pokud se shoduje původné URL a zároveň vrací tato funkce hodnotu true.
  • funkce - anonymní funkce, která je spuštěna pouze na URL odpovídající původní URL (první parametr) před odesláním _trackPageview.

Řešené případy

Změna URL odeslaného formuláře

Uživatel na webu je na URL /kontakt. Po odeslání formuláře Je pouze vypsána potvrzovací hláška. Aby bylo možné nastavit odeslání formuláře jako cíl, upravíme URL na /kontakt/odeslano.

<script type="text/javascript" src="/analytics.js"></script>
 <script type="text/javascript">
     var func = function(url) {
         return jQuery('p.msg-ok').length > 0; // nebo jiny selektor
     }
     var kontaktRoute = new _gas.route.ConditionOnUrl('/kontakt', '/kontakt/odeslano', func);
     
     _gas.addRoute(kontaktRoute);
     _gas.push(['_setDomainName', '.ga-script.org']);
     _gas.create('UA-123456-7', 't1');
 </script>