Меню документації
Блокування скриптів
Автоматичне блокування скриптів, ручне маркування, категорії згоди, заглушки та підтримка застосунків SPA.
Керування скриптами
Автоматичне блокування (типове)
В автоматичному режимі CookieHug виявляє та блокує сторонні скрипти, iframe і піксели відстеження за допомогою зіставлення доменів за іменем хоста та MutationObserver. Спостерігач стежить і за новими елементами DOM, і за змінами атрибута src в наявних елементах. Відомі домени трекінгу автоматично отримують категорію (статистика, маркетинг, налаштування) і блокуються до надання згоди.
Зіставлення за іменем хоста: шаблони порівнюються з іменем хоста в URL (а не з повною адресою), що запобігає хибним спрацюванням — segment.com не заблокує випадково my-segment.com. Шаблони зі шляхом (напр. facebook.com/tr) порівнюються з повною адресою. Відносні URL (власні скрипти сайту) ніколи не блокуються.
Охоплені сервіси — серед інших: Google Analytics (зокрема region1), Google Tag Manager, Google Ads, Meta/Facebook Pixel, TikTok, Snapchat, LinkedIn, Twitter/X, Pinterest, Bing Ads, Reddit, Quora, Amazon Ads, Hotjar, Clarity, Plausible, Matomo, Amplitude, FullStory, Mouseflow, Fathom, Datadog RUM, LogRocket, YouTube, Vimeo, Google Maps, Intercom, Crisp, LiveChat, Tawk.to, Drift, HubSpot, Zendesk, Freshworks та інші.
Скрипти з білого списку (напр. jQuery, Bootstrap, поширені бібліотеки CDN) ніколи не блокуються.
Важливо: скрипт CookieHug має бути в <head> перед усіма сторонніми скриптами. Скрипти, завантажені раніше за CookieHug, заблокувати заднім числом неможливо.
Ручне маркування скриптів
Використовуйте data-cookiehug-consent, щоб вручну керувати тим, які скрипти потребують згоди. Встановіть type скрипта на text/plain, щоб він не виконувався до отримання згоди.
<!-- Статистичний скрипт (зовнішній) -->
<script type="text/plain" data-cookiehug-consent="statistics"
src="https://www.googletagmanager.com/gtag/js?id=G-XXXXX">
</script>
<!-- Маркетинговий скрипт (вбудований) -->
<script type="text/plain" data-cookiehug-consent="marketing">
fbq('init', '123456789');
fbq('track', 'PageView');
</script>
<!-- Скрипт налаштувань -->
<script type="text/plain" data-cookiehug-consent="preferences"
src="https://cdn.example.com/chat-widget.js">
</script>Категорії згоди
| Значення | Опис |
|---|---|
necessary | Виконується завжди (згода не потрібна) |
preferences | Потребує згоди на cookie налаштувань |
statistics | Потребує згоди на статистичні cookie |
marketing | Потребує згоди на маркетингові cookie |
Заглушки для заблокованих елементів
Коли CookieHug блокує iframe (відео, карту, соціальний вбудований елемент, віджет чату), він автоматично замінює його стилізованою заглушкою з відповідною іконкою, поясненням, чому вміст заблоковано, і кнопкою, яка надає згоду саме для цієї категорії.
Використання runScripts() у SPA
У односторінкових застосунках, де вміст завантажується динамічно, викликайте CookieHug.runScripts() після додавання до DOM нового вмісту з позначеними скриптами:
// Після динамічного завантаження нового вмісту сторінки
loadPageContent().then(function() {
CookieHug.runScripts();
});