# Server-side Tag Manager és Consent Mode

> A Complianz használata szerveroldali Google Tag Managerrel: a GTM-URL cseréje, a Consent Mode sablon felülírása, multisite és a Stape korlátja.

Szerveroldali tagelésnél a címkéket nem közvetlenül a `googletagmanager.com` harmadik fél domainről szolgálod ki. Két domaint kell megkülönböztetni: azt, amelyik a címkét beállítja, és az átviteli (transport) URL-t, amely az adatot fogadja. A következő példában mindkettő `tagging.example.com`, vagyis saját kezelésű szerver. Lehet azonban a címkét vagy a konténert a `googletagmanager.com`-ról vagy egy dedikált Google Cloud megoldásról szolgálni, és mégis másik átviteli URL-t használni.

## Google Analytics szerveroldali tagelessel

A hozzájárulás nélküli változat:

```html
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://tagging.example.com/gtag/js?id=G-1234"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());

  gtag('config', 'G-1234', {
     transport_url: 'https://tagging.example.com',
     first_party_collection: true
  });
</script>
```

A hozzájárulással (ajánlott) változat:

```html
<script type="text/plain" data-category="statistics" async src="https://tagging.example.com/gtag/js?id=G-1234"></script>
<script type="text/plain" data-category="statistics">
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());

  gtag('config', 'G-1234', {
     transport_url: 'https://tagging.example.com',
     first_party_collection: true
  });
</script>
```

## A Complianz beállítása egyedi szerveroldali megvalósításnál

A Complianz csak a szokásos megvalósításnál tudja automatikusan beilleszteni a GTM-kódot. Ha a szerveroldali tagelés egyedi változatát használod:

1. A **Wizard → Consent → Statistics** lépésen válaszd a Google Tag Managert, de úgy állítsd be, hogy a Complianz **ne** illessze be a részletet.
2. Illeszd be a kívánt részletet magad. A Complianz tudni fogja, hogy az eseményeket az adatrétegen (data layer) keresztül kell indítania.
3. A Tag Manager további beállításához használd a Complianz egyedi eseményeit (lásd [Google Consent Mode v2 útmutató](https://hub.hellowp.io/hu/plugins/complianz-gdpr-premium/analitika-consent-mode-v2-utmutato/)).

## Server-side GTM Consent Mode-dal, lépésről lépésre

### 1. lépés: a GTM beállítása a Complianzen keresztül

1. Nyisd meg a varázslót: **Wizard → Consent → Statistics**, és válaszd: „Yes, and Google Tag Manager fires this script”.
2. Kapcsold ki a többi GTM-bővítményt, hogy ne legyen ütközés, és töröld a webhelyről a kézzel hozzáadott egyedi GTM-szkripteket.
3. Ellenőrizd, hogy a statisztikai beállítás a Complianzben helyes.
4. A Google Tag Manager irányítópultján nyisd meg a **Template Gallery** (sablongaléria) részt, keresd meg és telepítsd a Complianz-sablont.

### 2. lépés: a szerveroldali GTM beállítása

A szerveroldali GTM-et használóknak további beállítás kell.

1. **Cseréld ki a GTM-URL-t.** Szerveroldali GTM-nél a szokásos GTM-URL-t (`googletagmanager.com`) a saját szerver GTM-URL-edre kell cserélni (például `gtm.yourdomain.nl`).
2. **Írd felül a „GTM Consent Mode sablonszkriptet”.** A Complianz lehetővé teszi, hogy felülírd az alapértelmezett GTM Consent Mode sablonszkriptet. Ez a sablon a `wp-content/themes/custom-theme/complianz-gdpr-premium/templates/statistics/google-tag-manager-consent-mode-template.js` fájlra utal, amely a szerveroldali tagelésre testre szabható Google Tag Manager-részletet tartalmaz.
3. Keresd meg az aktuális WordPress-sablonod könyvtárát. Egy „custom-theme” nevű sablonnal a Complianz Premiumhoz az útvonal: `wp-content/themes/custom-theme/complianz-gdpr-premium/templates/statistics/`
4. Hozz létre ebben a könyvtárban egy `google-tag-manager-consent-mode-template.js` nevű fájlt.
5. Illeszd bele a módosított GTM + Consent Mode szkriptet.
6. A szkript 6. sorában cseréld ki a GTM-URL-t a saját szerveroldali GTM-URL-edre (például `gtm.yourdomain.nl`). A módosítandó sor ebben a részletben van:

```js
(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
        new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
    j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=

    // *** Modify the following line with your Server-Side GTM URL ***
    'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
    // ************************************************************

})(window,document,'script','dataLayer','{gtm_code}');
```

A Consent Mode v2 beállításához lásd a [Google Consent Mode v2 útmutatót](https://hub.hellowp.io/hu/plugins/complianz-gdpr-premium/analitika-consent-mode-v2-utmutato/).

### 3. lépés: multisite (ha van)

WordPress multisite telepítésnél, ha egyetlen sablont használ az összes aloldal:

- **Közös Consent Mode sablon.** Ugyanazt a Consent Mode sablonfájlt használja az összes aloldal. A szkriptben a `{gtm_code}` helyére mindegyik aloldalnál az ott, a varázslóban megadott GTM-kód kerül.
- **Egyedi logika a szerveroldali GTM-URL-ekhez.** Ha az aloldalaknak különböző szerveroldali GTM-URL-ek kellenek, a sablonfájlban megadhatsz egy GTM-konténerazonosító-listát. Rendeld az egyes konténerazonosítókat a megfelelő szerveroldali GTM-URL-hez, és ennek megfelelően módosítsd a GTM forrás-URL-t a szkriptben.

### Fontos megjegyzések

- Consent Mode használatakor a GTM4WP integrációt a Complianzben kapcsold ki (Off).
- A GTM4WP-ben a Container code beállítás legyen Off.

Ha gond adódik, nézd át gondosan a fenti lépéseket, és kövesd őket pontosan.

### Ismert korlát: a Stape.io és a GTM szerverkonténerek

A Complianz és a Stape.io integrációjának tesztelésekor egy akadályozó technikai korlátot találtak, amely megakadályozza a beállítás továbbvitelét. A Complianz jelenlegi GTM-sablonja kizárólag webes konténerekhez készült. A Stape-pel használt GTM-környezet alapvetően más (a szokásos webes konténerből szerveroldali konténerre vált), ezért a meglévő sablon nem kompatibilis vele. A korlát nem csak a Stape.io-ra vonatkozik: mindenkire érvényes, aki GTM szerverkonténert használ.
