2013-03-04 4 views
0

외부 링크를 클릭 할 때마다 dataLayer 푸시 이벤트를 만들려고합니다. 외부 링크 추적을 위해 GTM 태그를 실행하는 트리거로 사용할 계획입니다.외부 클릭에 대한 dataLayer 맞춤 이벤트 만들기

<script> 
Some code to detect clicks on any external links 
dataLayer.push({'event': 'eventNameXYZ'}); 
</script 
+0

그게 진짜 질문이 아니겠습니까? 어쨌든, 당신 말이 맞습니다. 또한 클릭 된 URL로 변수를 푸시 할 수도 있습니다. –

+0

예 - 코드가 어떻게 보이는지에 대한 지침을 찾고 있습니다. like - javascript를 모른다. – user2022284

답변

0

예 기능 : 나는 이런 식으로 뭔가있을 것입니다 상상

function pushToDataLayer() { 
    var links = document.getElementsByTagName('a'); 
    for(var i=0,cnt=links.length;i<cnt;i++) {  
     var current = links[i]; 
     current.onclick = function() { 
       dataLayer.push({ 
       'href': current.href, 
       'event': 'outbound' // event to trigger a rule in the tag manager 
      }); 
     } 
    } 
} 

(당신이 그것을 같이 jQuery를 또는 무언가를 사용하는 경우이 훨씬 쉬울 것입니다). 이렇게하면 모든 링크에 클릭 이벤트가 첨부됩니다. 클릭하면 이벤트 및 클릭 된 href가있는 변수가 dataLayer로 푸시됩니다.

태그 관리자에서 맞춤 이벤트 "아웃 바운드"에 태그를 트리거하는 새 규칙을 만들고 "href"dataLayer 변수를 포착하는 dataLayer 유형의 매크로를 만들어야합니다. 이 변수를 태그에 사용할 수 있습니다 (예 : GA 가상 '페이지 뷰'). 규칙에 따라 태그가 '이벤트 발생시 발신'으로 설정됩니다.

코드가 모든 브라우저에서 작동하지 않을 수 있으며 데모입니다 (물론 모든 링크를 잡을 것입니다. 절대 URL이나 아웃 바운드 링크를 제안하는 도메인 이름 또는 CSS 클래스 이름을 테스트해야합니다.) 링크를 찾고 이벤트를 첨부하는 데 jQuery를 사용하는 것이 좋습니다. .

관련 문제