# Gyorsítótár és JavaScript-késleltetés: a Complianz kizárása

> Hogyan zárd ki a Complianz szkriptjeit és CSS-fájljait a WP Rocket és a LiteSpeed optimalizálásából, és működik-e a Complianz oldalgyorsítótárral.

A gyorsítótár- és optimalizáló bővítmények (WP Rocket, LiteSpeed Cache és hasonlók) összevonhatják, kicsinyíthetik vagy késleltethetik a JavaScript- és CSS-fájlokat. A Complianz fájljainál ez hibát okoz, ezért ezeket ki kell zárni az optimalizálásból.

## Működik-e a Complianz gyorsítótárral?

Igen, a főbb gyorsítótár-bővítményekkel jól működik. Sok bővítmény a hozzájárulást szerveroldali PHP-val kezeli: ha a látogató hozzájárult, a PHP „kinyit” egy tartalmat. Ez a módszer (például a hozzájáruláshoz kötött shortcode-ok) teljes oldal-gyorsítótárral nem működik, mert a látogató egy korábban elmentett oldalverziót kap, és véletlen, melyiket. Ilyenkor minden érintett oldalnál be kellene állítani, hogy ne kerüljön gyorsítótárba.

A Complianz ezért másképp dolgozik. A blokkolandó tartalmat szerveroldalon, PHP-ban blokkolja, a látogató böngészőjében pedig a sütiblokkoló JavaScript szükség esetén, hozzájáruláskor feloldja. Így minden látogató ugyanazt a HTML-t kapja, ami gyorsítótárba tehető. A földrajzi célzás és az A/B-teszt (csak prémiumban) szintén kliensoldali: egy ajax-hívás kérdezi le a szervertől a régiót, így az oldal teljesen gyorsítótárazható, és a látogató a neki megfelelő sávot kapja.

### Összevonás és kicsinyítés

Ha egy bővítmény a harmadik féltől származó követőkódot a saját tartományodról töltött szkripten át tölti be, a Complianznak ezt a szkriptet is blokkolnia kell, a fájlnév alapján. Ha a gyorsítótár-bővítmény kicsinyíti és összevonja a szkripteket, a fájlnév felismerhetetlenné válik. Példa: a Complianz egy Facebook-feed bővítmény `cff-scripts.min.js` szkriptjét név szerint blokkolja, de ha a név `cached-0292023423.min.js` lesz, nem találja meg.

Két megoldás van:

- kérd meg a bővítmény fejlesztőjét, hogy támogassa a WP Consent API-t, ekkor az integráció magától működik;
- zárd ki a szkriptet az összevonásból és a kicsinyítésből.

## Miért kell kizárni a Complianz fájljait?

A Complianz szkriptjei és stíluslapjai a sütisáv működéséhez és a GDPR-hoz szükségesek. Ha optimalizálod, kicsinyíted vagy késlelteted őket:

- **a látogatók oldalán:** a sáv nem jelenik meg, hibásan vagy stílus nélkül látszik, rossz nyelven jön be, vagy minden oldalbetöltéskor újra megjelenik, mert a beállítások nem mentődnek el. A gyorsítótárazott szkript a sáv elavult változatát is kiszolgálhatja;
- **a megfelelés oldalán:** a hozzájárulási döntések nem rögzülnek vagy nem jutnak el a harmadik féltől származó szkriptekhez, a földrajzi szabályok nem érvényesülnek (olyan látogató is sávot kap, akinek nem kell, és fordítva), és a sütikategóriák rossz állapotban töltődnek be.

Ezek GDPR, CCPA és más szabályozás megsértéséhez vezethetnek, ezért a Complianzot zárd ki a gyorsítótárazásból és az optimalizálásból.

## JavaScript kizárása

A JavaScript-késleltetés (Delay JavaScript Execution) a szkripteket csak az első felhasználói műveletig (egérmozgás, érintés, görgetés, billentyű) tölti be. Ez a JavaScript lusta betöltéséhez hasonló, óvatosan használd, és a bekapcsolás után mindig ellenőrizd az oldalt.

A kizárási kulcsszavak:

- `complianz`
- `cmplz`

A prémium Complianz kizárandó fájljai:

```text
complianz-gdpr-premium/pro/tcf/build/index.js
complianz-gdpr-premium/pro/tcf-stub/build/index.js
complianz-gdpr-premium/cookiebanner/js/complianz.min.js
```

Az ingyenes Complianz kizárandó fájlja:

```text
complianz-gdpr/cookiebanner/js/complianz.min.js
```

### WP Rocket

1. Nyisd meg a WP Rocket **File Optimization** (fájloptimalizálás) fület.
2. A JavaScript-fájlok részen kapcsold be a **Delay JavaScript Execution** opciót.
3. Az **Exclude JavaScript** (JavaScript kizárása) mezőbe írd be a kulcsszavakat és fájlutakat: `complianz`, `cmplz`, `cmplz_activated_divi_recaptcha`, prémiumnál a három `complianz-gdpr-premium/…` fájlt, ingyenesnél a `complianz-gdpr/cookiebanner/js/complianz.min.js` fájlt.
4. Kattints a **Save Changes** gombra.

A `cmplz_activated_divi_recaptcha` kizárás főleg Divi oldalépítőnél fontos: a WP Rocket támogatásának javaslata szerint ez szünteti meg, hogy `rocketlazyloadscript` jelenjen meg a GTM-szkriptekben.

### LiteSpeed Cache

1. A LiteSpeed Cache menüben nyisd meg a **Page Optimization** oldalt, azon belül a **Tuning** fület.
2. A **JS Excludes** mezőbe írd be ugyanezeket: `complianz`, `cmplz`, valamint a prémium vagy ingyenes fájlutakat.
3. Ha a **JS Settings** fülön a **Load JS Deferred** értéke **Deferred** vagy **Delayed**, ugyanezeket add hozzá a **JS Deferred/Delayed Excludes** mezőhöz is.
4. Mentsd a változtatást.

## CSS kizárása

A Complianz CSS-fájljait is zárd ki az optimalizálásból, különben a sáv vagy más megfelelőségi elem elrendezése elromolhat.

| Verzió | Kizárandó útvonalak |
|---|---|
| Prémium | `complianz-gdpr-premium/assets/css/*` és `complianz-gdpr-premium/cookiebanner/css/*` |
| Ingyenes | `complianz-gdpr/assets/css/*` és `complianz-gdpr/cookiebanner/css/*` |

A kulcsszó mindkét esetben `cmplz`.

### WP Rocket

1. Nyisd meg a **Beállítások → WP Rocket → File Optimization** oldalt.
2. Ha a kicsinyítés be van kapcsolva, írd be a kizárásokat: `cmplz` és a fenti útvonalak.
3. Kattints az oldal alján a **Save Changes** gombra.

### LiteSpeed Cache

1. Nyisd meg a **LiteSpeed Cache → Page Optimization** oldalt.
2. A **Tuning CSS** fülön a **CSS Excludes** és a **UCSS File Excludes and Inline** mezőbe írd be a `cmplz` kulcsszót és a fenti útvonalakat.
3. Kattints a **Save Changes** gombra.

## Consent Mode v2 és GTM4WP

Ha a Consent Mode v2-t a Complianzzal és a GTM4WP (Google Tag Manager for WordPress) bővítménnyel együtt használod, az e-kereskedelmi konverzióknál előfordulhatnak hibák. Ezt jellemzően a gyorsítótár-bővítménnyel (például WP Rocket) való ütközés okozza, nem a Complianz.

WP Rocketben a megoldás:

1. Nyisd meg a WP Rocket **Settings → File Optimization** oldalát.
2. Görgess a JavaScript részhez, és ellenőrizd, hogy a **Delay JavaScript Execution** be van kapcsolva.
3. Keresd meg a GTM4WP szkriptjeit a bővítmények listájában.
4. Add a GTM4WP szkriptjét a kizárási listához, hogy ne késleltesse a bővítmény.

Ha ez nem oldja meg a hibát, fordulj a GTM4WP vagy a WP Rocket támogatásához. Ha másik gyorsítótár-bővítményhez ismersz kizárási szintaxist, vagy kompatibilitási hibát találsz, jelezd a Complianz támogatásán.
