Jak blokować skrypty do czasu udzielenia zgody: porównanie trzech metod

Problem: tagi uruchamiane zbyt wcześnie

Baner zgody działa tylko wtedy, gdy stojące za nim tagi respektują wybór użytkownika. Najczęstsza usterka jest prosta: baner się pojawia, ale skrypty analityczne i reklamowe zdążyły się już załadować i ustawić identyfikatory, zanim ktokolwiek cokolwiek kliknął. Naprawa oznacza blokowanie skryptów do czasu udzielenia zgody. Są trzy praktyczne sposoby, aby to zrobić.

Metoda 1: zmiana typu skryptu

Przeglądarki wykonują element script tylko wtedy, gdy jego typ jest typem JavaScript. Jeśli zmienisz typ na text/plain, przeglądarka zignoruje skrypt. Następnie dodajesz atrybut data, który zapisuje, do jakiej kategorii zgody należy skrypt:

Dobre dla: kilku znanych skryptów inline lub zewnętrznych w Twoich szablonach. Na co uważać: skrypty wstrzykiwane przez inne skrypty nigdy nie przechodzą przez Twoje szablony, więc nigdy nie są przepisywane.

Metoda 2: bramkowanie tagów w menedżerze tagów

Jeśli Twoje tagi znajdują się w Google Tag Manager lub podobnym narzędziu, możesz zostawić kontener na stronie i kontrolować uruchamianie za pomocą wyzwalaczy uwzględniających zgodę. Każdy tag ma przypisane wymaganie dotyczące zgody, a menedżer tagów uruchamia go tylko wtedy, gdy odpowiedni stan zgody jest przyznany. Ogromną zaletą jest centralna kontrola: dział marketingu może dodawać tagi bez dotykania szablonów, a reguła podąża za tagiem.

Dobre dla: witryn z wieloma tagami marketingowymi. Na co uważać: skrypty zakodowane na stałe poza kontenerem oraz niestandardowe tagi HTML, które ładują kolejne własne skrypty.

Metoda 3: dynamiczne ładowanie skryptów po zgodzie

Tutaj w ogóle usuwasz znaczniki skryptów ze strony i piszesz funkcję, która wstrzykuje je dopiero po zdarzeniu zgody. To najczystsza opcja dla aplikacji jednostronicowych i dla programistów, którzy chcą mieć pełną kontrolę:

  1. Nasłuchuj wywołania zwrotnego zgody z Twojego CMP.
  2. Sprawdź, które kategorie zostały przyznane.
  3. Utwórz element script, ustaw jego źródło i dołącz go do dokumentu.
  4. Uruchom dowolny kod inicjalizacyjny w obsłudze zdarzenia load skryptu.

Dobre dla: nowoczesnych aplikacji z etapem budowania. Na co uważać: zapomnienie o powracającym użytkowniku, którego zapisany wybór musi uruchomić ładowanie przy wczytaniu strony bez nowego kliknięcia.

Obsługa wycofania zgody

Blokowanie przed zgodą to połowa pracy. Jeśli użytkownik później wycofa zgodę, przestań wywoływać narzędzia i upewnij się, że nie odczytują ani nie zapisują dalej identyfikatorów. Usunięcie skryptu ze strony nie usuwa kodu już znajdującego się w pamięci, dlatego przeładowanie strony po wycofaniu zgody jest często najprostszym niezawodnym podejściem.

Którą wybrać?

Jak to przetestować

  1. Otwórz okno prywatne z wyczyszczoną pamięcią podręczną.
  2. Otwórz narzędzia deweloperskie przeglądarki na kartach Network i Application przed załadowaniem strony.
  3. Załaduj stronę i nie dotykaj banera. Potwierdź, że nie są wysyłane żadne żądania analityczne ani reklamowe i nie pojawiają się powiązane pliki cookie ani wpisy w pamięci.
  4. Zaakceptuj tylko jedną kategorię i potwierdź, że ładują się wyłącznie odpowiadające jej skrypty.
  5. Odrzuć wszystko, przeładuj stronę i powtórz pierwsze sprawdzenie.
  6. Wycofaj zgodę i sprawdź zachowanie opisane powyżej.

Gdzie pasuje FlexyConsent

FlexyConsent obsługuje IAB TCF 2.4 i Google Consent Mode v2 i jest certyfikowanym przez Google CMP (CMP ID 317). Niezależnie od wybranej metody blokowania zadaniem banera jest przekazanie Twojemu kodowi jasnego sygnału, co wybrał użytkownik. Twoim zadaniem jest dopilnować, aby każdy skrypt się do niego stosował.

Kluczowe wnioski

← Blog Czytaj wszystko →