Przejdź do głównej zawartości

Blokowanie skryptów

Blokowanie skryptów jest podstawowym mechanizmem ConsentForge zapobiegającym ładowaniu skryptów stron trzecich przed wyrażeniem zgody przez użytkownika.

Jak to działa

Gdy ConsentForge się ładuje, skanuje stronę w poszukiwaniu skryptów z atrybutem type="text/plain" i data-consent-category. Skrypty te są nieaktywne — przeglądarki ich nie wykonują.

Gdy zgoda dla kategorii zostaje udzielona, ConsentForge:

  1. Znajduje wszystkie pasujące tagi <script>
  2. Zmienia type z "text/plain" na "text/javascript"
  3. Dla skryptów zewnętrznych (atrybut src): ponownie tworzy element <script>, aby wyzwolić ładowanie
  4. Dla skryptów inline: wykonuje treść za pomocą eval() (w środowisku izolowanym)

Oznaczanie skryptów do blokowania

<!-- Skrypt zewnętrzny -->
<script
type="text/plain"
data-consent-category="analytics"
src="https://www.googletagmanager.com/gtag/js?id=G-XXXXX"
></script>

<!-- Skrypt inline -->
<script type="text/plain" data-consent-category="marketing">
fbq('init', 'YOUR_PIXEL_ID');
</script>

Blokowanie iFrame

Dla iFrame (np. YouTube, Vimeo, Google Maps) użyj data-src zamiast src:

<iframe
data-src="https://www.youtube.com/embed/VIDEO_ID"
data-consent-category="marketing"
width="560" height="315"
></iframe>

Gdy zgoda zostanie udzielona, ConsentForge ustawia src na podstawie data-src, ładując iframe.

Czego nie można zablokować

  • Skryptów ładowanych przez menedżera tagów przed uruchomieniem zgody (zamiast tego użyj GTM z Consent Mode)
  • Śledzenia po stronie serwera (użyj API ConsentForge do sprawdzenia zgody po stronie serwera)
  • Natywnych funkcji przeglądarki (Service Workers, localStorage — są kontrolowane przez środowisko uruchomieniowe, nie przez blokowanie skryptów)

Weryfikacja

Po konfiguracji otwórz Narzędzia deweloperskie → Sieć z filtrem „Wszystkie". Skrypty, które powinny być zablokowane, NIE powinny pojawiać się w dzienniku sieci przed zaakceptowaniem przez użytkownika. Po zaakceptowaniu powinny się załadować.