Integracje
WordPressWordPress
sprawdzone w praktycePlatformy i sklepy

CookiePilot dla WordPress

Wtyczka WordPress pozwala podłączyć domenę, edytować banner i włączyć Consent Mode bez ręcznej edycji motywu.

Opis

Wtyczka WordPress pozwala podłączyć domenę, edytować banner i włączyć Consent Mode bez ręcznej edycji motywu.

Konfiguracja z panelu WordPress.
Synchronizacja klucza domeny i ustawień bannera.
Bezpieczne domyślne zgody dla Google Consent Mode.

Wtyczka jest w oficjalnym katalogu WordPress.org

CookiePilot instalujesz tak samo jak każdą inną wtyczkę WordPress: w kokpicie przejdź do Wtyczki → Dodaj nową, wyszukaj „CookiePilot” i kliknij Zainstaluj, a potem Włącz. Wtyczka jest opublikowana w oficjalnym katalogu wtyczek WordPress.org pod slugiem cookiepilot, więc aktualizacje dostajesz standardowym mechanizmem aktualizacji WordPressa — bez ręcznego wgrywania plików.

Jeżeli wolisz instalację ręczną (np. na stagingu bez dostępu do internetu), pobierz paczkę ZIP z WordPress.org i wgraj ją przez Wtyczki → Dodaj nową → Wyślij wtyczkę na serwer. Wymagania są niskie: WordPress 6.0 lub nowszy i PHP 8.0+, licencja GPLv2.

Konto CookiePilot założysz bez wychodzenia z wp-admin — wtyczka ma wbudowaną rejestrację i logowanie, a darmowy plan (1 domena, 10 000 odsłon miesięcznie) nie wymaga karty płatniczej. Po zalogowaniu klikasz „Add this domain”, a wtyczka sama tworzy domenę w CookiePilot i zapisuje klucz API w ustawieniach WordPressa.

Katalog: wordpress.org/plugins/cookiepilot
Wymagania: WordPress 6.0+, PHP 8.0+
Darmowy plan: 1 domena, 10 000 odsłon/mies., bez karty

Jak wtyczka ładuje CMP — kolejność ma znaczenie

Wtyczka wstrzykuje CookiePilot w dwóch krokach, dokładnie w kolejności wymaganej przez dokumentację Google Consent Mode. Najpierw inline stub na hooku wp_head z priorytetem 0 — czyli zanim załaduje się GTM, GA4 czy jakakolwiek inna wtyczka śledząca. Stub synchronicznie ustawia wszystkie sygnały Consent Mode na denied (z wyjątkiem security_storage) z wait_for_update: 500, definiuje window.gtag i wypycha default consent do dataLayer.

Dla powracającego użytkownika stub odczytuje cookie cookiepilot_consent i od razu wykonuje consent update — stan zgody jest poprawny już przy pierwszym renderze strony, bez „migotania” między denied a granted po przeładowaniu.

Drugim krokiem jest właściwy bundle cookiepilot.js ładowany asynchronicznie z CDN przez standardowy mechanizm wp_enqueue_scripts. Konfiguracja idzie w atrybutach data-*: data-cpkey (klucz domeny), data-locale (język strony) i data-page-type (kontekst WooCommerce). Dla nietypowych wdrożeń są filtry cookiepilot_should_inject i cookiepilot_print_gcm_stub — celowo pomyślane jako wyjścia awaryjne, a nie sposób na wyłączanie banera na podstronach.

Źródło w kodzie: includes/class-frontend.php
Stub: wp_head, priorytet 0, denied-by-default
Filtry: cookiepilot_should_inject, cookiepilot_print_gcm_stub

Edytor banera w wp-admin: 7 zakładek i 13 języków

Panel wtyczki to aplikacja React osadzona w wp-admin, z edytorem banera podzielonym na zakładki: szablony, ustawienia ogólne, teksty, kolory, styl, efekty i zaawansowane. Zmieniasz pozycję i układ banera (pasek, karta, modal), kolory z podglądem na żywo, typografię, zaokrąglenia, przyciski, a nawet efekty typu glassmorphism czy animacje wejścia.

Teksty banera edytujesz w 13 językach (m.in. polski, angielski, niemiecki, francuski), a wtyczka sama wykrywa język strony: na instalacjach z WPML lub Polylang pobiera bieżący język przez filtr wpml_current_language, a na stronach jednojęzycznych używa determine_locale(). Wykryty język trafia do banera jako data-locale — odwiedzający widzi banner w języku strony, nie w domyślnym.

W zakładce zaawansowanej konfigurujesz domyślne stany Google Consent Mode (interfejs podpowiada, że RODO wymaga denied), tryb dostępności WCAG 2.1 AA oraz cookie zgody (nazwa i czas życia, domyślnie 365 dni). Interfejs panelu jest w pełni przetłumaczalny przez standardowe mechanizmy i18n WordPressa.

13 języków banera z auto-detekcją WPML/Polylang
Tryb dostępności WCAG 2.1 AA
Consent Mode: konfigurowalne defaults + wait_for_update

Tryb agencyjny: jeden panel dla stron klientów

Agencje prowadzące wiele stron nie muszą zakładać konta na każdej z nich. W panelu CookiePilot generujesz jednorazowy token instalacyjny (format cpat_ + 32 znaki), a klient wkleja go we wtyczce — domena automatycznie podpina się do konta agencji.

Od tego momentu agencja zarządza banerem klienta ze swojego panelu, a wtyczka na stronie klienta komunikuje się z API kluczem domeny, bez współdzielenia loginów. Na wyższym planie dostępny jest white-label.

Token: cpat_… (jednorazowy)
Klient nie potrzebuje konta CookiePilot
White-label na planie Business

Co jest necessary, a co musi czekać na zgodę

WordPress sam w sobie używa cookies technicznych i preferencyjnych, np. sesji zalogowanego użytkownika, wp-settings-* albo wp_lang. CookiePilot rozróżnia te elementy od trackerów marketingowych i analitycznych.

Najważniejszy test wdrożenia WordPress to czysta sesja niezalogowanego użytkownika. Admin cookies mogą zakłócić wynik, dlatego frontend trzeba sprawdzać bez panelu WP, bez wcześniejszej zgody i najlepiej z nowym profilem przeglądarki.

WordPress session: necessary
wp-settings/wp_lang: preferences
GA/Meta/Ads/Hotjar: wymagają odpowiedniej zgody

Cache, awaria API i dowody zgody

CookiePilot jest cache-friendly z natury: bundle CMP to statyczny plik z CDN, a cała konfiguracja idzie w atrybutach data-* — w HTML-u nie ma nic generowanego per żądanie. Dzięki temu wtyczka działa z WP Rocket, W3 Total Cache, LiteSpeed Cache i innymi wtyczkami cache bez dodatkowej konfiguracji, a strona z pełnym page cache dalej pokazuje poprawny banner.

Konfiguracja banera jest dodatkowo cache'owana w przeglądarce odwiedzającego, więc chwilowa niedostępność API nie wyłącza banera. Inline stub z denied-by-default jest częścią HTML-a, więc nawet strona serwowana w całości z cache zaczyna od bezpiecznych ustawień zgody.

Dowody zgody (kto, kiedy, na co i w jaki sposób wyraził zgodę) oraz historia wersji banera są przechowywane po stronie CookiePilot przez wymagane 5–6 lat, z eksportem do CSV, PDF i JSON — to dokumentacja, o którą może poprosić UODO przy kontroli zgodności z RODO i art. 399 PKE.

Zgodność: WP Rocket, W3TC, LiteSpeed Cache
Rekordy zgód: 5–6 lat, eksport CSV/PDF/JSON
RODO + art. 399 PKE

Kroki wdrożenia

  1. 1Zainstaluj wtyczkę CookiePilot z oficjalnego katalogu WordPress.org (Wtyczki → Dodaj nową → wyszukaj „CookiePilot”) i ją aktywuj.
  2. 2Zaloguj się lub załóż konto w panelu wtyczki i kliknij „Add this domain” — klucz domeny zapisze się automatycznie.
  3. 3Włącz Consent Mode v2 i zapisz konfigurację.
  4. 4Otwórz frontend w czystej sesji i sprawdź banner przed zgodą.

Checklista testowa

  • window.CookiePilot jest dostępne na frontendzie.
  • Przed zgodą nie ma _ga, _fbp, _gcl ani podobnych cookies.
  • Reject zachowuje stronę funkcjonalną.
  • Accept wysyła consent update do dataLayer.

FAQ

Czy to jest porada prawna?

Nie. To techniczny przewodnik wdrożeniowy. Przy nietypowym modelu danych warto skonsultować konfigurację z prawnikiem lub inspektorem ochrony danych.

Czy CookiePilot blokuje wszystkie skrypty automatycznie?

CookiePilot ma autoblocking i Consent Mode, ale twardo wklejone trackery uruchomione przed CMP trzeba przenieść za stub albo do GTM Consent Initialization.