Расширенная аналитика Google (v4)

:information_source: Сводка Расширенное отслеживание событий Google Analytics 4 для Discourse
:hammer_and_wrench: Ссылка на репозиторий https://github.com/multidimension-al/discourse-google-analytics
:open_book: Гид по установке Как установить плагины в Discourse

Ядро Discourse отправляет в Google Analytics одно событие page_view на каждую навигацию. Этот плагин добавляет события для времени чтения, прогресса чтения и завершения чтения, а также может по желанию взять на себя управление отображением страниц, чтобы исключить маршруты личных сообщений и администратора.

ПОЧЕМУ НЕ ИСПОЛЬЗОВАТЬ ВСТРОЕННЫЙ ТЭГ SEO/GA?

Можно, и для многих форумов этого достаточно. Тэг из ядра работает, и этот плагин функционирует поверх него, а не заменяет его.

Разница заключается в том, что именно измеряется. Событие page_view говорит лишь о том, что URL был загружен. Оно не может показать, читал ли кто-то содержимое страницы, поэтому двадцатиминутное чтение длинной темы и мгновенный уход выглядят в отчетах одинаково. Этот плагин измеряет, сколько времени человек действительно читал, как далеко он зашел в теме и достиг ли конца. Именно эти сигналы важны для принятия решений о контенте и создания аудитории для ремаркетинга.

Собственные отчеты Discourse (Администрирование → Отчеты) — это отдельная система и остаются лучшим местом для внутренних метрик. Здесь речь идет только о том, что попадает в Google Analytics.

Возможности

  • 13 событий сообщества: просмотры тем, вовлеченность и вехи прогресса чтения, завершение чтения, сводки по посещению, поиск, регистрация, вход, создание темы, ответы, лайки, закладки
  • Измерение чтения на основе потока сообщений и времени внимательного чтения, а не глубины прокрутки
  • Два режима: расширение существующего тэга ядра или полный контроль над тэгом и просмотрами страниц
  • Личные сообщения, ограниченные категории и административные маршруты не генерируют событий
  • Заголовки тем и поисковые запросы по умолчанию не отправляются
  • Трафик персонала можно пометить как внутренний трафик GA4, по группам
  • Страница диагностики и предупреждения в админ-панели при неправильной конфигурации

Конфигурация

1. Установка

hooks:
  after_code:
    - exec:
        cd: $home/plugins
        cmd:
          - git clone https://github.com/multidimension-al/discourse-google-analytics.git

Затем выполните ./launcher rebuild app.

2. Выберите режим. Администрирование → Настройки → Google Analytics 4.

Расширение ядра (по умолчанию) — ядро сохраняет тэг и просмотры страниц, плагин добавляет события поверх. Установите ga universal tracking code в ядре в значение вашего G-XXXXXXXXXX, а ga version в v4_gtag.

Управляемый — плагин берет на себя управление тэгом и просмотрами страниц, что позволяет исключать маршруты личных сообщений и администратора. Очистите ga universal tracking code в ядре, установите ga4 integration mode в managed и введите ваш ID в поле ga4 measurement id.

3. Включите discourse ga4 enabled.

4. Необязательно — внутренний трафик. ga4 internal traffic groups по умолчанию включает администраторов и модераторов. Это вступает в силу только после создания соответствующего фильтра в GA4: Администрирование → Настройки данных → Фильтры данных → Внутренний трафик, где traffic_type равно internal.

5. Проверка. Администрирование → Плагины → Google Analytics → Диагностика.

Чтобы перенести существующую настройку из режима «Расширение ядра» в «Управляемый», используйте опцию Принять существующую конфигурацию GA Discourse на странице диагностики, а не редактируйте настройки вручную.

Настройки

Имя Описание
discourse ga4 enabled Включить плагин. По умолчанию выключено.
ga4 integration mode core_extension (ядро управляет тэгом) или managed (плагин управляет тэгом).
ga4 measurement id Идентификатор измерения GA4, для управляемого режима.
ga4 track page views Отправлять page_view. Только для управляемого режима.
ga4 track topic views Отправлять discourse_topic_view один раз за посещение темы.
ga4 track topic engagement Отправлять discourse_topic_engaged по вехам времени чтения.
ga4 engagement milestones Секунды активного чтения, при которых срабатывает событие. По умолчанию 10|30|60|180.
ga4 track topic progress Отправлять discourse_topic_progress по вехам позиции чтения.
ga4 progress milestones Проценты темы, при которых срабатывает событие. По умолчанию 25|50|75|100.
ga4 track read completion Отправлять discourse_topic_read_complete, когда читатель достигает конца.
ga4 read complete min seconds Минимальное время чтения, чтобы конец считался завершением.
ga4 track read summaries Отправлять discourse_topic_read_summary, когда читатель покидает тему.
ga4 read summary min seconds Ниже этого значения посещение считается отскоком и не суммируется.
ga4 track search Отправлять search, когда полностраничный поиск возвращает результаты.
ga4 track registration Отправлять sign_up после создания учетной записи.
ga4 track login Отправлять login после успешного входа. По умолчанию выключено.
ga4 track topic creation Отправлять discourse_topic_created.
ga4 track replies Отправлять discourse_reply_created.
ga4 track likes Отправлять discourse_post_liked. Удаление лайка ничего не отправляет.
ga4 track bookmarks Отправлять discourse_bookmark_created.
ga4 send search terms Также отправлять поисковый запрос. По умолчанию выключено — поисковые запросы на форумах часто содержат личную информацию.
ga4 send page titles Включать заголовок страницы. По умолчанию выключено — на маршруте темы это заголовок темы.
ga4 track private message activity Одно агрегированное событие личных сообщений без идентификаторов. По умолчанию выключено.
ga4 login required is restricted На форуме с обязательным входом удерживать идентификаторы тем и категорий.
ga4 send trust level Включать уровень доверия 0–4 в качестве параметра события.
ga4 internal traffic groups Участники этих групп помечаются как traffic_type=internal. По умолчанию: администраторы, модераторы.
ga4 suppress in embed Ничего не отправлять в режиме встраивания.
ga4 debug mode Логировать события и решения о подавлении в консоль браузера.

Примечания

  • В режиме «Расширение ядра» ядро по-прежнему управляет просмотрами страниц, поэтому URL личных сообщений и заголовки тем по-прежнему отправляются. Только управляемый режим это меняет.
  • Не регистрируйте topic_id как пользовательское измерение GA4 — оно не ограничено и достигнет пределов кардинальности ресурса.
  • Собственный отчет Discourse «Администрирование → Отчеты → Трендовый поиск» фиксирует переходы по кликам, поэтому показывает, какие поисковые запросы оказались неудачными. GA4 этого не может. Именно поэтому ga4 send search terms выключено по умолчанию.
1 лайк