setTimeout за проследяване на Google Анализ

ДОБАВЕНО след публикуване. Когато посетител щракне върху изходна връзка на сайт и тази изходна връзка е маркирана в инструмент за анализ (в този случай Google Анализ), понякога данните за събитието не се предават навреме на инструмента за анализ, докато браузърът достигне новия сайт . Често срещано решение е да се добави забавяне към връзката, за да се даде време на инструмента за анализ да вземе данните. Откакто зададох въпроса си по-долу, експериментирах колко забавяне да добавя. Първоначално ми казаха 5 милисекунди. Накрая трябваше да стигна до 500 милисекунди

Бях настроил някои персонализирани html в Google Tag Manager, за да проследявам събития.

Оригиналният код, който използвах, е тук:

    <script type="text/javascript"> 


$(document).ready(function(){ 

    $('.app-cta a').click(function(){ 
        dataLayer.push({ 'event':'GAevent', 'eventCategory':'App', 'eventAction':'Click to App Store', 'eventLabel':'iOS' }) 
    }); 

});

</script>

Това не успя да улови категориите, действията и етикета на събитието в Google Analytics. Аз обаче ги взимах в Httpfox. Един колега предложи да добавите 5 millisecond delay. Не съм сигурен в логиката, но ми казаха, че това е често срещано решение на моя проблем.

Използвайки Google и W3 Schools, мисля, че разбрах как да добавя забавянето от 5 милисекунди:

    <script type="text/javascript"> 

setTimeout(function(){
$(document).ready(function(){ 

    $('.app-cta a').click(function(){ 
        dataLayer.push({ 'event':'GAevent', 'eventCategory':'App', 'eventAction':'Click to App Store', 'eventLabel':'iOS' }) 
    }); 

});
},5);

</script>

Изглежда, че това не е проработило. Google Analytics не събира данните за събитията, но Httpfox все още го прави. Тъй като нямам опит с Javascript, се чудех дали вторият кодов блок изобщо е правилен - правилно ли съм добавил метода setTimeout?


person Doug Fir    schedule 11.08.2013    source източник
comment
Закъснението от 5 милисекунди никога не е добро решение на проблем.   -  person SLaks    schedule 11.08.2013


Отговори (1)


Струва ми се, че сте объркали проследяването на събития в Google Анализ и събитията в Google Tag Manager. За проследяване на GA събитие в сравнение с GTM събитие трябва:

  1. Създайте HTML таг в GTM по този начин:

    <script type="text/javascript">
    _trackEvent('event':'GAevent', 'eventCategory':'App', 
                'eventAction':'Click to App Store', 'eventLabel':'iOS' });
    </script>
    
  2. Създайте за този маркер правило "{{event}} contains GAevent_track"
  3. Запазете етикета и го покажете на страниците, където искате да проследявате връзки. Публикувайте новата версия
  4. Направете връзките, които искате да проследявате, така :<a href="/bg#" name="button_event" onclick="dataLayer.push({'event': 'GAevent'});" Event tracking</a>
person Ruslan Konygin    schedule 12.08.2013
comment
Добре, но как след това да свържете този скрипт с връзката $('.app-cta a')? Също така, опитах cut n paste, но GTM не ми позволи да публикувам Грешка на ред 3, знак 20: Грешка при анализиране. липсва ) след списъка с аргументи. и Грешка на ред 4, знак 26: Грешка при анализ. синтактична грешка.. Не мога да видя къде са тези грешки? - person Doug Fir; 12.08.2013
comment
Моля, погледнете стр.4 от първия ми коментар - редактирах го, имаше проблеми с форматирането. - person Ruslan Konygin; 13.08.2013