dataLayer

DataLayer je javascriptová proměnná, která v analytice slouží k předávání dat do Google Tag Manageru (GTM). Do češtiny se někdy překládá jako datová vrstva, ale analytici mu říkají prostě dataLayer

Můžete jej využít například v Google Tag Manageru.

 

Jak zapnout dataLayer

DataLayer zapnete v administraci eshopu (horní menu - nastavení - nastavení - vlevo záložka dataLayer). Pokud chcete povolit tuto verzi dataLayeru, vyberte v nastavení "Generovat DataLayer" hodnotu "Ano, (verze 2022)"

Pokud si chcete dataLayer nejprve otestovat (nechcete, aby se zasílal nějakému měřícímu scriptu), můžete změnit jeho název (Pokud do tohoto pole zadáte "mujTestovaciDatalayer", bude dataLayer bude uložen v proměnné "mujTestovaciDatalayer")

 

Kompatibilita s GTAG

Pokud máte ve svém eshopu nasazen zároveň i GTAG (nebo jste přímo do kódu eshopu nasadili Google Anlaytics, Google Ads, nebo jinou službu, která GTAG automaticky zapne), musíte mít na paměti, že GTAG také využívá proměnnou, která se jmenuje dataLayer.

Oficiální informace od Google je, že takovéto nasazení sice může fungovat, ale nejspíše bude dělat problémy (např. některé události nebo objednávky budou v datech 2x; jednou z dataLayeru a jednou z GTAGu). To může mít zásadní vliv na přesnost měření a vyhodnocování vašich kampaní.

Protože dataLayer by měl sloužit primárně pro Tag Manager, přidali jsme do eshopu nastavení, které umožní přejmenovat název proměnné, ve které je dataLayer uložen. Stejně tak můžete změnit, z jaké proměnné načítá informace dataLayer. (Oboje najdete v administraci: horní menu - nastavení - nastavení - vlevo záložka dataLayer potažmo záložka Google Tag Manager)

 

Příklad - produkt s variantami

Než přejdeme k popisu samotného dataLayeru, je třeba pochopit následující příklad:

Návštěvník si prohlíží produkt "Vánoční svetr". Tento produkt je k dispozici ve třech velikostech (S, M, L) a dvou barvách (zelená, červená).

Stejně jako má tento svetr svůj kód (P1), má i každá varianta svůj kód (P11, P12, P13...)

Všechny varianty tohoto produktu se posílají do XML Feedu Google, Zboží, Heureka a další. Tyto vyhledávače však vyžadují, aby se jim posílaly pouze varianty, ne nadprodukt. V XML feedu tak nenajdete položku s kódem P1, ale pouze P11, P12, P13 atd...

otázka: jak nastavíte reklamní kampaně, aby se při prohlížení produktu P1 zobrazila reklama na produkt P11? P1 totiž ve feedu být nesmí.

 

eccomerceItem - JSON jednoho produktu

Níže na stránce najdete v jednotlivých příkladech uvedeno, že daný záznam obsahuje "eccomerceItem". V takovém případě je v této položce uvedena informace o jednom produktu.

Specifikace JSONu jednoho produktu

 {
brand: "Adidas"
brand_id: 1

category_id: 73
category_id_path: (2) [-2147483647, 73, 26, 84]
category_name: "Svetry"
category_name_path: (2) ["Oblečení", "Pánské", "Zimní", "Svetry"]

code: ["P1","P11","P12","P3","P14","P15"]
id: [1,11,12,13,14,15]
name: ["Pánský svetr"]

variant_code: "P11"
variant_id: 11
variant_name: "Pánský svetr Červený L"

price: 8608.7
price_vat: 9900
vat: 15

amount: 2
amount_unit:"Ks",
amount_unit_id:1,

sum_price:17217,4,
sum_price_vat:1980,
}

 

Hodnota Popis
brand Název značky
brand_id ID značky (z číselníku v administraci)
category_id ID kategorie, ve které je produkt zařazen
category_id_path Cesta ve stromu kategorií.
category_name Název kategorie, ve které je produkt zařazen
category_name_path Cesta ve stromu kategorií
code Kód produktu
id ID produktu
variant_code Kód vybrané varianty. Pokud nemá produkt varianty (nebo varianta ještě nebyla zákazníkem vybrána), je zde kód nadproduktu.
variant_id ID vybrané varianty. Pokud produkt nemá varianty (nebo varianta ještě nebyla zákazníkem vybrána), je zde ID nadproduktu.
variant_name Název vybrané varianty. Pokud produkt nemá varianty (nebo varianta ještě nebyla zákazníkem vybrána), je zde název nadproduktu.
price Cena BEZ dph
price_vat Cena S dph
vat DPH (procenta)
Hodnoty, které jsou dostupné jen v události binargon_purchase
amount počet kusů
amount_unit:"Ks" Jednotka, v jaké se produkt prodává (Ks, Litry, m2..). Tato hodnota může být v každém jazyce jiná, proto doporučujeme použít amount_unit_id
amount_unit_id:1 ID jednotky, ve které se produkt prodává.
sum_price:17217,4 Suma ceny bez DPH za všechny kusy BEZ dph
sum_price_vat:1980 Suma ceny bez DPH za všechny kusy S dph

 

Eventy

tak jak uživatel pracuje s webem, jsou do dataLayeru posílány jednotlivé události (např. prohlížení detailu produkt, prohlížení košíku, objednávka). DataLayer podporuje tyto události

event binargon_page_view

Tento event se posílá při návštěvě jakékoli stránky

 {
_clear:true,
"event":"binargon_page_view",
"binargon":{
"type":"home",
"currency":"CZK",
"fce":1
}
}

 

Funkce (fce) a typy stránek (type)

fce type popis
1 home homepage
2 searchresults Hledáni
2 category Výpis kategorie
3 brand Stránka výpisu výrobce
5 user-registration Stránka s registračním formulářem
6 product Detail produktu
7 favorites Oblíbené produkty
8 cart Košík
9 cart Košík a nákupní proces
11 orders-history Historie objednávek
20 login-and-forgotten-password Stránka s formulářem pro zaslání zapomenutého hesla
23 user-personal-settings Osobní nastavení uživatele
24 searchresults Jiná verze hledání (dnes již zastaralá)
28 watchdog Hlídací pes přehled
29 textpage Textová stránka
30 wish-book Kniha přání
33 product-comparison Porovnání produktů
34 sitemap Mapa stránek
36 text-news Textové novinky
38 warranty-claim Reklamace
41 product-reviews-list Výpis všech recenzí všech produktů (recenze produktů)
42 add-new-product-review Založení nové recenze
44 user-password-reset Reset uživatelského hesla
45 hidden-or-deleted-product Stránka skrytého nebo smazaného produktu (eshop může mít nastaveno, že skryté produkty se zobrazí, ale bez možnosti koupit je)
41 web-reviews-list Výpis všech recenzí tohoto eshopu (hodnocení eshopu, spokojenosti s nákupem)

 

event binargon_view_item

Tento event se posílá pokaždé, pokud uživatel prohlíží detail jednoho produktu

 {
"event": "binargon_view_item",
"binargon": {
"list_name": "product_detail",
"items": [eccomerceItem]
}
}

 

event binargon_view_item_list

Tento event se posílá pokaždé, pokud uživatel prohlíží seznam produktů

 {
"event": "binargon_view_item_list",
"binargon": {
"list_name": "souvisejici_1",
"items": [eccomerceItem, eccomerceItem, eccomerceItem]
}
}

 

event binargon_view_cart

Tento event se posílá pokaždé, pokud uživatel prohlíží obsah košíku, resp. jednotlivé kroky nákupního procesu

 {
"event": "binargon_view_cart",
"binargon": {
"list_name": "basket",
"items": [eccomerceItem, eccomerceItem]
}
}

 

event binargon_purchase

Tento event nastane při dokončení objednávky

 {
"event": "binargon_purchase",
"binargon": {
"discount_price": 8.26,
"discount_price_vat": 10,
"discount_vat": 21,
"discount_coupon": [],

"items": [eccomerceItem, eccomerceItem, eccomerceItem, eccomerceItem],
"items_other": [eccomerceItem, eccomerceItem],

"payment": "Dobírka",
"payment_id": 1,
"payment_type": "0",
"payment_cashPayment": true,

"shipping": "Osobní odběr",
"shipping_id": 8,
"shipping_type": "P_1",
"shipping_price": 82.64,
"shipping_price_vat": 100,
"shipping_vat": 21,

"transaction_id": 15784,
"transaction_code": "114781",
"transaction_secretURL": "http://www.xmlshop.cz/objednavky/?objlist=15784&allowOrderShow=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",

"user_id": 9108,
"user_country": "CZ",

"sum_price": 595.04,
"sum_price_vat": 720,
}
}
Záznam popis
discount_price Výše slevy bez DPH
discount_price_vat Výše slevy S DPH
discount_vat Absolutní částka DPH
discount_coupon Seznam použitých slevových kupónů
items seznam objednaných produktů
items_other další objednané položky, které nejsou produktem. Na tyto položky nemůžete vytvořit reklamní kampaň, nejedná se o položky, které mají URL adresu.
payment Použitá platba (v každém jazyce se může název lišit, proto je lepší použít payment_id)
payment_id ID použité platby
payment_type Např. kód platební brány
payment_cashPayment Informace, zda je použitá platba hotovostní platbou.
shipping Název použité dopravy
shipping_id ID použité dopravy
shipping_type Typ použité dopravy
shipping_price Cena (bez DPH) použité dopravy
shipping_price_vat Cena (s DPH) použité dopravy
transaction_id ID objednávky
transaction_code Kód objednávky
transaction_secretURL URL adresa objednávky. Na tuto adresu lze přejít, i když uživatel není přihlášen.
user_id ID uživatele, který vytvořil objednávku
user_country Země uživatele, který vytvořil objednávku
sum_price Celková cena za celou objednávku, včetně dopravy a platby (bez DPH)
sum_price_vat Celková cena za celou objednávku, včetně dopravy a platby (s DPH)

 

event binargon_actual_consent

Tento event nastane na každé stránce a obsahuje seznam souhlasů, které jsou při generování stránky povolené, nebo zamítnuté

To, které službě které ID odpovídá, najdete v administraci svého eshopu (v modulu Souhlasy)

 {
"event":"binargon_actual_consent",
"binargon":{
"granted":["34","52","59","69"],
"not_granted":["5","6"]
}
}

 

Záznam popis
granted Seznam ID všech souhlasů, které byly uděleny
not_granted Seznam ID všech souhlasů, které byly zamítnuty

 

event binargon_consent_update

Tento event nastane při schválení nebo zamítnutí souhlasu (i částečném)

Protože uživatel může udělit souhlas jen některým službám, je při změně poslán seznam ID souhlasů, které jsou po aktuálním eventu povoleny a zakázány

To, které službě které ID odpovídá, najdete v administraci svého eshopu (v modulu Souhlasy)

 {
"event": "binargon_consent_update",
"binargon": {
"granted": ["34","52","59","69"],
"grantedSystemId": ["commonZbozi2016","gtag_security_storage"],
"not_granted": ["28","29","33","41","42","45","46","53","56","57","65","68","70"],
"not_grantedSystemId": ["gtag_ad_storage","gtag_personalization_storage","sambaAI"]
}
}
Záznam popis
granted Seznam ID všech souhlasů, které byly uděleny
grantedSystemId Seznam systémových ID všech souhlasů, které byly uděleny
not_granted Seznam ID všech souhlasů, které byly zamítnuty
not_grantedSystemId Seznam systémových ID všech souhlasů, které byly zamítnuty

 

Externí vs Vložený dataLayer

Z důvodu výkonu je většina eventů vkládaných pomocí externího scriptu (javascriptový kód, který do proměnné dataLayer doplňuje nové záznamy je načítán z externí adresy, jeho kód není vložen přímo do kódu stránky). Nenajdete jej tedy ve zdrojovém kódu stránky

Přímo do těla stránky jsou vloženy pouze tyto eventy (pouze tyto eventy najdete ve zdrojovém kódu):

  • binargon_page_view
  • binargon_actual_consent
  • binargon_purchase