Обеспечение правильной настройки DataLayer - PullRequest
0 голосов
/ 02 ноября 2018

Я пытаюсь убедиться, что наш разработчик правильно настроил Google Data Manager (GTM) на нашем веб-сайте, поскольку у меня возникают проблемы при проверке.

Вот ситуация: Я попросил нашего разработчика настроить DataLayers на странице продукта нашего веб-сайта, используя метод window.dataLayer.push. Они сказали, что сделали это.

Я настроил все надлежащие переменные в нашей учетной записи GTM, чтобы они соответствовали именам слоев данных, собранным на веб-сайте. Затем я перешел в режим отладки GTM Preview, чтобы убедиться, что переменные были заполнены на любой странице продукта. Однако каждый раз, когда я проверял это, переменные появлялись как «неопределенные». Хммм.

Мой разработчик сказал, что все выглядит нормально с их стороны, и предоставил скриншот расширения Google Tag Assistant Chrome, в котором указано, что выбираются переменные продукта, и я увидел то же самое:

GoogleTagAssistantScreenshotProductPage

Я проверил исходный код для этой страницы продукта и нашел это:

<script type="text/javascript">
    (function e(){var e=document.createElement("script");e.type="text/javascript",e.async=true,e.src="//staticw2.yotpo.com/vznvXB90INUtUFVnU1036xQfL3T6LgDlAYStvsoA/widget.js";var t=document.getElementsByTagName("script")[0];t.parentNode.insertBefore(e,t)})();
</script>

<script>
    var toPushToDatalayer = ({"event":"productDetail","ecommerce":{"detail":{"products":[{"name":"Business Basics for Law Students","id":"10040","price":"80.9500","category":null,"magento_id":"36"}]}}}); dataLayer.push(toPushToDatalayer);
</script>

<script type="text/javascript">
    //<![CDATA[
    var Translator = new Translate([]);
    //]]>
</script>

<meta name="msvalidate.01" content="DC61177F62A1EFB53CB064D74B1BB401" />
<meta name="google-site-verification" content="75YqkgTbUbVcW7fqgA9EmUo6lrULtbTDW8urj8TJMo0" />

Я не разработчик и поэтому был обеспокоен тем, что отсутствие термина window.dataLayer.push в исходном коде страницы может означать, что этот метод не использовался для реализации DataLayers на веб-сайте. Тем более что, хотя переменные отображаются в окне Tag Assistant, они все еще отображаются как «неопределенные» в окне отладки GTM Preview в «Variables» (хотя они действительно отображаются на вкладке «Data Layer»), как на скриншоте ниже для той же страницы:

GTMPreviewDebugScreenshot

Итак, я предполагаю, что мой вопрос таков: если мои переменные уровня данных заполняются на странице моего продукта (для скриншота TagAssistant и вкладки Data Layer на скриншоте отладки GTM Preview (верхняя половина), почему мои переменные отображаются как undefined под Вкладка «Переменные» в режиме отладки GTM Preview (как на скриншоте отладки GTM Preview (нижняя половина))?

Чтобы охватить все мои базы, вот несколько примеров того, как я настраивал переменные в Google Tag Manager для этих переменных страницы продукта, на случай, если проблема заключается здесь:

GTMVariableSetUp

Извините за длинный пост, я хотел дать всю необходимую информацию. Заранее спасибо за любую помощь!

1 Ответ

0 голосов
/ 02 ноября 2018

Я думаю, что ваша проблема связана с настройкой GTM. Чтобы получить доступ к «имени», вам нужно сделать ...

ecommerce.detail.products [0] .name

, но приведенное выше даст вам только первое название продукта, поскольку может быть множество продуктов.

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

...