Я настроил нашу учетную запись Google Tag Manager (GTM), чтобы она отправляла просмотры виртуальная страница в Google Analytics (GA). Это сводится к отправке настраиваемого события в массив dataLayer (= GTM), которое затем инициирует отправку просмотра страницы в GA. Это прекрасно работает.
К той же учетной записи GTM также подключен Hotjar, и я ищу возможность отправить просмотр виртуальной страницы также в Hotjar. Однако я не могу найти никакой документации по этому поводу. Hotjar поддерживает это, но они говорят только о том, чтобы делать это через свою собственную функцию «hj», и я бы предпочел сделать это через GTM.

На основании их официальная документация они говорят, что Hotjar будет автоматически отслеживать просмотры страниц, если вы меняете URL-адреса в своем одностраничном приложении.
Если вы SPA меняете только фрагменты, то вам нужно использовать эту настройку «Автоматически отслеживать изменения, включая фрагменты».
Если вы хотите отправить в Hotjar аналог «виртуального просмотра страницы», то вам нужно выполнить в своем GTM:
hj('stateChange', 'some/relative/path');
Вы должны иметь возможность использовать hj, и функция должна быть уже определена, когда GTM запускает тег.
Если вы хотите получить подробный ответ, относящийся к вашему веб-сайту, будет лучше поделиться ссылкой на веб-сайт и тем, как вы в настоящее время настроили GTM для отслеживания просмотров виртуальных страниц.
Тогда можете просто попробовать добавить window.hj=window.hj||function(){(hj.q=hj.q||[]).push(arguments)}; перед вызовом hj
Да, спасибо, это работает, и это обязательно сработает, поскольку это первая строка официального фрагмента скрипта.
Если мое решение работает, не могли бы вы принять мой ответ.
Вопрос был в том, как заставить его работать через GTM, а не через функцию hj.
Спасибо. Приложение действительно является SPA, но страницы, о которых я говорю, - это своего рода мастер, а шаги не имеют собственного URL-адреса. Также проблема заключалась в том, что "hj" еще не определился. Единственный сценарий, который загружается на страницу, - это сценарий GTM, и как разработчик javascript вы не знаете, что когда точно будет доступна функция "hj". Вот почему я бы предпочел просто отправить событие на уровень данных.