Відстеження копіювання тексту на сайті


Сьогодні я хочу поділитись з вами своїм новим скриптом, за допомогою якого можна відслідковувати подію копіювання тексту на вашому сайті, а також визначити, яка саме інформація була скопійована. За допомогою такого налаштування ви додасте ще один метод набору інструментів для аналізу контентних (і не тільки) ресурсів. Це налаштування досить просто виконати, на реалізацію не знадобиться багато часу. Крім того, основна зручність в тому, що не потрібно залучати ніякі додаткові інструменти, дані, що відстежуються, будуть доступні в звичному інтерфейсі Google Analytics.

Опис скрипту


Опишу принцип роботи скрипту.

За допомогою методу addEventListener() реєструємо обробник події копіювання. У тілі самого оброблювача визначаємо виділений в даний момент текст на сторінці і зберігаємо його в змінну selected_text, видаливши для читабельності переноси рядків. Далі я здійснюю обробку виділеного фрагмента: якщо в тексті більше 50 символів, беремо лише перші та останні 20 символів за допомогою функції substring; в іншому випадку залишаємо текст незмінним. У масив dataLayer передаємо значення змінної selected_text та подію copy.

Код

Налаштування в Google Tag Manager

  1. Створюємо новий тег у GTM типу “Тег користувача HTML” і копіюємо в текстове поле наведений вище код.
пользовательский тег

2. Створюємо тригер типу “Перегляд сторінки – Модель DOM готова”. Він буде виступати правилом активації для тега користувача.

создаем триггер

3. Створимо зміну користувача типу “змінна рівня даних” з ім’ям “selected_text”.

пользовательская переменная

Значення цієї змінної ми зможемо передавати в Google Analytics, наприклад, при надсиланні події копіювання.

4. Додамо новий тег “Universal Analytics”. У параметрах події вказуємо змінну “selected_text”. Мені зручно аналізувати такі дані у розрізі сторінок, тому в атрибуті “Категорія” я додаю “Page Path”. Для того, щоб легко відфільтрувати дані лише за подіями копіювання, на початок параметрів “Категорія” та “Дії” я додала “copy – ”. Ви можете передавати ті дані, які зручно вам.

Universal Analytics

Звертаю вашу увагу на опцію “Не взаємодія”. Якщо ви хочете, щоб надсилання події впливало на ваш показник відмов, необхідно встановити значення “false” для цього параметра. А якщо ні, то встановлюйте значення “true”.

5. Як умову активації цього тегу додаємо новий тригер типу “Подія користувача”. У полі Ім’я події прописуємо подію copy.

имя события

Щоб переконатися в коректності наших налаштувань, скористаємося відладчиком GTM.

отладчик GTM

Для випадку, коли текст, що копіюється більше 50 символів, також все передається коректно.

ctrlc_gtm7

Дані у звітах Google Analytics

Увімкнувши до звіту за подіями дані, що містять “copy -”, можна відфільтрувати лише події копіювання. А вибравши як додатковий параметр категорію події, легко встановити відповідність між скопійованим текстом і конкретною сторінкою, з якої його було взято.

данные в отчетах Google Analytics

Виконавши лише кілька простих дій, описаних вище, ви зможете відстежити, яку інформацію копіюють із вашого сайту. Сподіваюся, що моя стаття буде корисною для вас! Ще про аналітику контентних ресурсів.