Хотя Google называет скорость страницы важнейшим показателем производительности при определении пользовательского опыта и ее влияния на фактор ранжирования, это весьма иронично, поскольку их характеристики смехотворно медленны.

Типичный скрипт Диспетчера тегов Google.

Обычно для реализации Диспетчера тегов Google требуется загрузить два скрипта: один в начале и один в конце тела. Пример:

Высоко в теге :

<!-- Google Tag Manager -->
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l="+l:"';j.async=true;j.src="
})(window,document,'script','dataLayer','GTM-XXXXXX');</script>
<!-- End Google Tag Manager -->

После тега :

<!-- Google Tag Manager (noscript) -->
<noscript><iframe src="
height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<!-- End Google Tag Manager (noscript) -->

Однако некоторым компаниям приходится загружать более одного контейнера GTM и совершать ошибку, просто добавляя дополнительные теги скриптов. Этот метод работает, но требует дополнительных HTTP-запросов, что влияет на общую производительность сайта. Правильный метод — загрузить один скрипт и затем передать ему несколько идентификаторов контейнера.

Скрипт многоконтейнерного диспетчера тегов Google

При отправке нескольких идентификаторов контейнеров вам придется отказаться от стандартного кода копирования и вставки, предоставляемого Диспетчером тегов Google. В этом примере кода я загружаю два разных идентификатора контейнера из Диспетчера тегов Google:

Высоко в теге :

<!-- Google Tag Manager -->
<script>
  dataLayer = {
    'gtm.start': {
      'GTM-XXXXXXX': true,
      'GTM-YYYYYYY': true
    }
  };
</script>
<!-- Google Tag Manager script -->
<script src="
<script>
  gtag('js', {
    'gtm.start': dataLayer['gtm.start']
  });
</script>
<!-- End Google Tag Manager -->

После тега :

<!-- Google Tag Manager (noscript) -->
<noscript><iframe src="
height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<!-- End Google Tag Manager (noscript) -->

Если у вас более двух идентификаторов контейнера, добавьте этот идентификатор контейнера в массив dataLayer в теге head и добавьте его в путь iframe в теле, разделенный запятой.

Обратите внимание, что это не сэкономит много времени. Когда скрипт запускается, ему все равно необходимо активировать каждый тег в вашей учетной записи Диспетчера тегов Google. Однако это экономит время между выполнением каждого сценария и выполнением каждого запроса из исходного сценария.

Source

ЧИТАТЬ  Совет эксперта о том, как увидеть метеорист -лирид в эти выходные