В настоящее время я пытаюсь реализовать Диспетчер тегов Google, но я столкнулся с проблемой, так как GTM добавляет теги прямо перед закрывающим тегом тела.Почему менеджер тегов Google добавляется в конце тела?
Всякий раз, когда у меня есть шаблон, который должен вызывать бит кода из одного из сценариев в Диспетчере тегов Google, я получаю неопределенную ошибку. Это очевидно, так как не имеет значения, где я ставил свой сценарий на мой взгляд, GTM всегда будет после него, так как он добавляется прямо перед тегом закрывающего тега.
Есть ли способ исправить это поведение и почему Google делает это так? Я понимаю, что это помогает с неблокированием, но они могут также просто разместить асинхронные атрибуты на скриптах, и он почти сделает то же самое?
Пример: У меня есть Facebook Пиксель как один из моих тегов в GTM, и мне нужно иметь возможность сделать конкретный вызов, когда я загружаю определенную страницу в качестве своего вида.
fbq('track', 'Search');
Для этого для начала требуется экземпляр fbq. Это оставит меня только с одним вариантом, и я попытаюсь разместить мой сценарий в нижнем колонтитуле, который является общим шаблоном, и он станет беспорядочным.
Любое обходное решение для этого поведения?
удалить async attr или пересмотреть способ использования – YOU
Мы можем только догадываться, когда дело доходит до намерений Googles. Я предлагаю вам перефразировать ваш вопрос, чтобы решить вашу актуальную проблему («как я могу получить доступ к переменным в GTM из сценария, загруженного в голову страницы»), что, вероятно, более ответственно, чем «почему было разработано такое программное обеспечение». –