Funkce Cena Dokumentace Blog Pro agentury Kontakt
Přihlásit Vyzkoušet zdarma
Dokumentace / Instalace skriptu

Instalace skriptu Cookienovo

Technické informace o banneru Cookienovo pro vývojáře: jak vložit skript, konfigurovat značky, blokovat skripty podle kategorie a napojit Google Consent Mode v2.

Vložení skriptu

Aby vaše webová stránka zobrazovala banner Cookienovo a sbírala souhlasy se soubory cookie, vložte do zdrojového kódu stránky náš skript. Najdete ho ve svém účtu Cookienovo (dostali jste ho i e-mailem při registraci). Skript vložte do sekce <head>, co nejvýše — před Google Tag Manager a ostatní měřicí skripty.

Instalace má dvě části: (1) inline skript, který synchronně nastaví výchozí souhlasy Google Consent Mode v2 před spuštěním jakýchkoli Google tagů, a (2) samotný skript banneru:

<!-- Krok 1: predvolené súhlasy PRED akýmikoľvek Google tagmi -->
<script>
window.dataLayer=window.dataLayer||[];function gtag(){dataLayer.push(arguments);}
gtag('consent','default',{
  'ad_storage':'denied','ad_personalization':'denied','ad_user_data':'denied',
  'analytics_storage':'denied','functionality_storage':'denied',
  'personalization_storage':'denied','security_storage':'granted','wait_for_update':500
});
gtag('set','ads_data_redaction',true);
</script>

<!-- Krok 2: banner Cookienovo (možno použiť defer) -->
<script site-token="<site-token>" type="text/javascript"
        src="https://cookienovo.com/assets/client.js" defer></script>

Používáte optimalizační nebo cache plugin (WP Rocket, LiteSpeed Cache, Autoptimize, SG Optimizer, W3 Total Cache…)? Vylučte skript Cookienovo z jeho úprav — zejména z minifikace/kombinování JavaScriptu a z odloženého spuštění (Delay JavaScript). Do seznamů výjimek přidejte cookienovo a po změně vymažte cache pluginu. Jinak se cookie lišta nemusí zobrazit.

Značky skriptu

Skript banneru Cookienovo podporuje tyto atributy:

  • site-token — povinné. UUID vaší stránky z účtu Cookienovo (dostali jste ho i e-mailem). Bez správného tokenu se banner nezobrazí.
  • theme — volitelné. Vynutí motiv banneru: "light" nebo "dark".
  • consent-mode — volitelné. Přepíše režim souhlasu banneru. Ve výchozím nastavení "true"; nastavte "false", pokud nechcete odesílat souhlasy.

Blokování skriptů podle kategorie

Aby se měřicí a marketingové skripty spustily až po souhlasu, přiřaďte jim kategorii přes atribut cn-category. Banner Cookienovo je pak spustí jen tehdy, když návštěvník danou kategorii povolí:

<script type="text/javascript" cn-category="analytics">
  // analytický skript
</script>

Možné hodnoty atributu cn-category: necessary (nezbytné), functional (funkční), analytics (analytika), marketing.

Zpracování událostí

Pokud chcete stav souhlasu zpracovat ve vlastních skriptech, poslouchejte událost CookienovoUserConsentChanged:

<script type="text/javascript">
  document.addEventListener("CookienovoUserConsentChanged", (e) => {
    console.log("súhlas zmenený", e.detail);
  });
</script>

V objektu detail najdete stav souhlasu pro každou kategorii (kategorie + booleovská hodnota, zda ji uživatel povolil):

{
  "detail": [
    { "category": "necessary",  "allowed": true  },
    { "category": "analytics",  "allowed": false },
    { "category": "functional", "allowed": true  },
    { "category": "marketing",  "allowed": true  }
  ]
}

Google Consent Mode v2

Cookienovo plně vyhovuje Google Consent Mode v2 a nastavuje ho automaticky — bez zásahu uživatele či administrátora. Výchozí souhlasy se nastaví hned při načtení stránky a po volbě návštěvníka se aktualizují.

Díky dvoudílné instalaci (inline výchozí souhlasy + skript banneru) jsou signály ad_storage, analytics_storage, ad_user_data a ad_personalization ve výchozím nastavení nastaveno na 'denied' ještě před spuštěním Google tagů. Přístup sleduje průmyslové standardy a funguje i s asynchronně načítanými Google tagy. Výchozí nastavení zahrnují wait_for_update:500 a ads_data_redaction:true pro maximální ochranu soukromí.

Více v dokumentaci Google.

Ladicí funkce

K ověření implementace Consent Mode v2 poskytuje Cookienovo ladicí funkce, které spustíte v konzoli prohlížeče. Otevřete konzoli (F12) na libovolné stránce s nainstalovaným Cookienovo a spusťte:

// zapni debug režim a spusti plnú validáciu
window.cookienovoDebug.enableDebugMode()

// len validačné kontroly
window.cookienovoDebug.runFullValidation()

// report súladu
window.cookienovoDebug.generateComplianceReport()

// stav Consent Mode
window.cookienovoDebug.checkConsentMode()

// test implementácie
window.cookienovoDebug.testConsentModeImplementation()

// kontrola Shopify integrácie
window.cookienovoDebug.checkShopifyIntegration()

Funkce vypíšou podrobné informace o vaší implementaci: skóre souladu, zjištěné Google tagy, problémy a konkrétní doporučení. Diagnostiku můžete spustit i z dashboardu bez otevírání konzole.

Automatické blokování trackerů

Cookienovo dokáže automaticky neutralizovat trackery třetích stran mimo Google (například Facebook Pixel, Hotjar či Microsoft Clarity) před udělením souhlasu a znovu je aktivovat ve chvíli, kdy návštěvník povolí příslušnou kategorii. Google tagy se řeší samostatně přes Consent Mode v2, takže je není potřeba blokovat ručně.

U podporovaných trackerů nejsou potřeba žádné změny v kódu. Blokování je best-effort: pokrývá seznam známých trackerů a skripty vložené přímo v <head> mohou jednou vystřelit dříve, než se blokovač spustí. Pro jisté blokování jakéhokoli skriptu ho označte ručně podle návodu výše. Automatické blokování si zapnete nebo vypnete sami v nastavení lišty svého webu — přepínač „Automatické blokování sledovačů“. U nových webů je ve výchozím nastavení zapnuté.

Odkaz v patičce: znovuotevření nastavení cookies

Ve výchozím nastavení malé plovoucí tlačítko „Cookies“ umožňuje návštěvníkům znovu otevřít jejich předvolby. Pokud ho chcete skrýt (nastavte ikonu na Skryté v nastavení banneru) a otevírat preference centrum z vlastního odkazu — například „Nastavení cookies“ v patičce — přidejte na libovolný prvek atribut data-cookienovo-settings:

<a href="#" data-cookienovo-settings>Nastavenia cookies</a>

Nebo jej otevřete programově z vlastního JavaScriptu:

window.cookienovo.showConsentSettings()