Obecnie 179 forumowiczów jest online
Tutaj możesz rozmawiać na następujące tematy: zarządzanie kontem Analytics, przywracanie konta, ustawianie hierarchii kont, rozbieżności danych między AdWords a Analytics, łączenie AdWords z Analytics, importowanie celów e-commerce do AdWords, ustawienia remarketingu.
Poprowadź mnie
star_border
Odpowiedz

Reguły w GTM

Nowicjusz ✭ ✭ ✭

Witam serdecznie,

Jest sklep internetowy na , którym znajdują się karty produktów  z dołączonymi do nich filmami i bez filmów. Jaką należy utworzyć regułę , aby tag tylko sie uruchamiał na na stronie produktów z filmami  ? Dodam , iż utworzyłem regułę , aby tag  się odpalał na stronie z produktami. 

Odpowiedź eksperta 1verified_user
1 ZAAKCEPTOWANE ROZWIĄZANIE

Zaakceptowane rozwiązania
Zaakceptowane rozwiązanie.
Rozwiązanie
Zaakceptowane przez: Piotr Kazana (Community Manager)
marca 2016

Dot.: Reguły w GTM

[ Edytowane ]
Wschodząca Gwiazda

Jeśli już ingerować w kod i dataLayer to lepiej od razy wysyłać zdarzenie, czyli w kodzie strony, tam gdzie występuje film wstawić:
dataLayer = [{
'event': 'produkt-z-filmem'
}];

Kod należy umieścić przed kodem kontenera.

 

A następnie tworzymy regułę - zdarzenie niestandardowe, jako nazwę zdarzenia dajemy "produkt-z-filmem" i ta reguła nam odpala tag.
O jedną rzecz mniej do zrobienia.

 

Jeśli natomiast nie masz możliwości ingerować w kod strony, a na stronie, na której znajduje sie produkt z filmem jest jakiś charakterystyczny element posiadający unikatowy ID np. <div id="film">... to wystarczy, że dodasz niestandardowy tag HTML, do którego wrzucasz kod:
<script>
try {
if(document.getElementById("film")){
dataLayer.push({"event": "produkt-z-filmem"});
}
}
catch(err) {
console.log(err.message);
}
</script>

 

i też konfigurujesz regułę dokładnie tak samo, jak opisałem na początku.

 

Zapomniałem napisać, że ten tag zawierający własny kod HTML najlepiej uruchamiać zdarzeniem gtm.dom

Tomasz Ciepłucha

Wyświetl rozwiązanie w oryginalnym poście

Dot.: Reguły w GTM

[ Edytowane ]
Magister ✭

Najbardziej praktycznie byłoby dodać warstwę danych, a w niej zawrzeć informację o tym, czy na stronie jest film, np:

dataLayer = [{
'film': 'tak'
}];

 

Następnie utworzyć Zmienną, która pobiera informacje z warstwy danych (Zmienna warstwy danych) i dodać do reguły - czyli dany tag może się odpalić jeśli podstrona = produktowa i zmienna film = tak

 

Jeśli kod strony na to pozwala, możesz również skorzystać ze zmiennej Element DOM do sprawdzenia, czy na stronie występuje odpowiedni element (id elementu)

http://www.simoahava.com/analytics/variable-guide-google-tag-manager/#9

Zaakceptowane rozwiązanie.
Rozwiązanie
Zaakceptowane przez: Piotr Kazana (Community Manager)
marca 2016

Dot.: Reguły w GTM

[ Edytowane ]
Wschodząca Gwiazda

Jeśli już ingerować w kod i dataLayer to lepiej od razy wysyłać zdarzenie, czyli w kodzie strony, tam gdzie występuje film wstawić:
dataLayer = [{
'event': 'produkt-z-filmem'
}];

Kod należy umieścić przed kodem kontenera.

 

A następnie tworzymy regułę - zdarzenie niestandardowe, jako nazwę zdarzenia dajemy "produkt-z-filmem" i ta reguła nam odpala tag.
O jedną rzecz mniej do zrobienia.

 

Jeśli natomiast nie masz możliwości ingerować w kod strony, a na stronie, na której znajduje sie produkt z filmem jest jakiś charakterystyczny element posiadający unikatowy ID np. <div id="film">... to wystarczy, że dodasz niestandardowy tag HTML, do którego wrzucasz kod:
<script>
try {
if(document.getElementById("film")){
dataLayer.push({"event": "produkt-z-filmem"});
}
}
catch(err) {
console.log(err.message);
}
</script>

 

i też konfigurujesz regułę dokładnie tak samo, jak opisałem na początku.

 

Zapomniałem napisać, że ten tag zawierający własny kod HTML najlepiej uruchamiać zdarzeniem gtm.dom

Tomasz Ciepłucha

Dot.: Reguły w GTM

Nowicjusz ✭ ✭ ✭
A co w przypadki jeśli nie ma unikatowego ID , tylko jest unikatowa div class

Dot.: Reguły w GTM

Wschodząca Gwiazda
To zamiast funkcji document.getElementById możesz użyć funkcji getElementsByClassName
Np. tak:
if(document.getElementsByClassName("nazwa_klasy").length){
...
}
Tomasz Ciepłucha

Dot.: Reguły w GTM

Nowicjusz ✭ ✭
Jeżeli masz filmy na youtube to możesz skorzystać z youtube api i tam przypisać odpowiedni zdarzenie. Zresztą będziesz mógł potem śledzić dodatkowo czy filmy były włączane, pauzowane, oglądane do końca itp.