Як блокувати скрипти до отримання згоди: порівняння трьох методів

Проблема: теги спрацьовують надто рано

Банер згоди працює лише тоді, коли теги за ним поважають вибір відвідувача. Найпоширеніша помилка проста: банер з'являється, але скрипти аналітики та реклами вже завантажилися й встановили ідентифікатори до того, як хтось щось натиснув. Виправити це означає блокувати скрипти до отримання згоди. Є три практичні способи.

Метод 1: підміна типу скрипта

Браузери виконують елемент script лише тоді, коли його тип — це тип JavaScript. Якщо змінити тип на text/plain, браузер проігнорує скрипт. Потім ви додаєте атрибут data, що фіксує, до якої категорії згоди належить скрипт:

Підходить для: кількох відомих вбудованих або зовнішніх скриптів у ваших шаблонах. Остерігайтеся: скриптів, які впроваджують інші скрипти: вони не проходять через ваші шаблони й тому ніколи не переписуються.

Метод 2: керування тегами в менеджері тегів

Якщо ваші теги містяться в Google Tag Manager або подібному інструменті, контейнер можна залишити на сторінці та керувати спрацьовуванням за допомогою тригерів з урахуванням згоди. Кожному тегу задається вимога згоди, і менеджер тегів запускає його лише тоді, коли відповідний стан згоди надано. Головна перевага — централізований контроль: маркетинг може додавати теги, не чіпаючи шаблони, а правило подорожує разом із тегом.

Підходить для: сайтів із безліччю маркетингових тегів. Остерігайтеся: жорстко прописаних скриптів поза контейнером і користувацьких HTML-тегів, які самі завантажують інші скрипти.

Метод 3: динамічне завантаження скриптів після згоди

Тут ви повністю прибираєте теги script зі сторінки й пишете функцію, яка впроваджує їх лише після події згоди. Це найчистіший варіант для односторінкових застосунків і для розробників, яким потрібен повний контроль:

  1. Підпишіться на callback згоди від вашої CMP.
  2. Перевірте, які категорії було дозволено.
  3. Створіть елемент script, задайте його джерело й додайте до документа.
  4. Виконайте код ініціалізації в обробнику завантаження скрипта.

Підходить для: сучасних застосунків із етапом збірки. Остерігайтеся: забути про відвідувача, що повернувся, чий збережений вибір має запускати завантаження під час відкриття сторінки без нового кліку.

Обробка відкликання згоди

Блокування до згоди — лише половина роботи. Якщо відвідувач пізніше відкликає згоду, припиніть викликати інструменти й переконайтеся, що вони не продовжують читати чи записувати ідентифікатори. Видалення скрипта зі сторінки не видаляє код, що вже перебуває в пам'яті, тому перезавантаження після відкликання часто є найпростішим надійним рішенням.

Який метод обрати?

Як це протестувати

  1. Відкрийте приватне вікно з очищеним кешем.
  2. Відкрийте інструменти розробника браузера на вкладках Network і Application до завантаження сторінки.
  3. Завантажте сторінку й не чіпайте банер. Переконайтеся, що запити аналітики та реклами не надсилаються, а пов'язані cookie чи записи сховища не з'являються.
  4. Прийміть лише одну категорію й переконайтеся, що завантажуються тільки відповідні скрипти.
  5. Відхиліть усе, перезавантажте сторінку й повторіть першу перевірку.
  6. Відкличте згоду й перевірте поведінку, описану вище.

Де місце FlexyConsent

FlexyConsent підтримує IAB TCF 2.4 і Google Consent Mode v2 та є CMP, сертифікованою Google (CMP ID 317). Який би метод блокування ви не обрали, завдання банера — дати вашому коду чіткий сигнал про вибір відвідувача. Ваше завдання — забезпечити, щоб кожен скрипт йому підкорявся.

Ключові висновки

← Блaderegistrdelays delays Читати все →