Как определить google_tag_params в Диспетчере тегов Google?

я хочу создать кампанию динамического ремаркетинга в Google Ads, но мне нужно сообщить GTM, откуда брать информацию для ecomm_prodid, ecomm_pagetype, ecomm_totalvalue и ecomm_category с моего веб-сайта. Я понимаю, что мне нужно создать переменную уровня данных, но я просто не знаю, как заставить эти теги извлекать необходимую информацию с моего сайта. Я также знаю, что вы должны иметь возможность видеть в Google Tag Assistant метаданные для ваших продуктов (цена, бренд, категория и т. д.) в теге динамического ремаркетинга. К сожалению, я не могу добавить код на свой веб-сайт, так как он был создан на платформе, которая не позволяет использовать пользовательский код, поэтому мне приходится использовать GTM.

Например, класс цены: fPrice -g-product-final-price-258. Разве ecomm_totalvalue не должен брать информацию из этого класса? Я пытался читать страницы справки от Google, но они ооочень запутаны, я не могу их понять.

Если бы кто-нибудь помог мне с этим, я был бы очень благодарен.

Спасибо


person Andrei Pop    schedule 22.05.2020    source источник


Ответы (1)


Я знаю, что это с опозданием на 10 месяцев, но это может помочь вам или привести кого-то, прибывающего сюда, к, надеюсь, правильному направлению и / или решению. Я наткнулся на ваш вопрос без ответа, когда искал что-то еще. Кажется, у вас есть два вопроса, поэтому я постараюсь ответить на оба.

Для начала вы можете быстро просмотреть документацию по динамическому ремаркетингу GTM.

Вопрос 1. Где взять информацию для [переменных]?

Вы на правильном пути с dataLayer здесь. Обычно вам нужно реализовать это с помощью собственного Javascript на вашем веб-сайте (что в вашем случае вы не можете сделать / об этом см. ниже). Обычно вы заполняете события и переменные функцией dataLayer.push().

Вот пример того, как это может выглядеть:

    dataLayer.push({
    'event': 'your_event_name',
    'a_container_name' : {

      'key1' : key_var_1,
      'key2' : key_var_2, }
    })

Вы также можете создавать внутренние структуры внутри этих структур (вложенный словарь).

После того, как они заполнены, вы можете создавать переменные в Google Tag Manager (GTM) и просто выбирать значения с использованием соглашения об именах, которое вы использовали, разделенных расширением . (точка). Для вышеизложенного вы можете, например, сделать: a_container_name.key1, который затем заполнит переменную в GTM значением key_var_1.

Вы можете использовать название события (здесь: 'your_event_name') в качестве триггера для тега в GTM для запуска вашего тега.

Таким образом, в вашем случае вы обычно хотите, чтобы переменная ecomm_prodid была взята с веб-страницы с небольшим количеством javascript и помещена в dataLayer, чтобы вы могли выбрать ее в GTM, как описано.

Вопрос 2. Я не могу добавить код на свой веб-сайт, что мне делать?

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

Вы можете использовать собственный javascript внутри переменных в GTM. Для этого нажмите на переменные, затем нажмите «Создать» и выберите «Пользовательский Javascript». Затем вы можете использовать практически любой javascript здесь, чтобы в основном очистить значение с вашего веб-сайта на основе идентификатора, класса или любых других идентификаторов HTML. Есть масса вариантов, как это сделать. Вы должны использовать то, что лучше всего работает для вас.

Однако это потенциально очень подвержено ошибкам. Вот почему: вы заявили, что ваш класс для цены — fPrice -g-product-final-price-258. Мне это очень похоже на автоматически сгенерированный идентификатор. В следующий раз, когда вы посмотрите на этот продукт или выберете другой, он, скорее всего, будет другим. Таким образом, вы можете выбрать либо другой уникальный идентификатор, либо использовать его подстроку (например, только fPrice -g-product-final-price). Но имейте в виду, что если ваш веб-сайт когда-либо обновит или изменит эти имена классов, javascript, который вы написали мгновенно, больше не будет работать.

Поэтому важно выбрать надежную форму идентификатора или написать код javascript, чтобы он работал. Как уже упоминалось, jvascript для очистки или чтения непосредственно с вашего веб-сайта может быть настолько индивидуальным, насколько вам нравится. Вот грубый пример того, как это будет выглядеть.

var text = ''; // empty value placeholder

if (document.getElementsByClassName("YOUR_SPECIFIC_CLASS_NAME")) {

 ....loop through returned elements if applicable....
 ....do stuff here or check stuff here...

text = SOME_ELEMENT.innerHTML;
console.log(text) // helps to debug your code
}

return text

Опять же, это только грубый пример, но если вы заставите его работать, вы можете просто использовать заполненную переменную в своем теге в любом поле, которое поддерживает переменную с двойными фигурными скобками: {{YOU_TAG_MANAGER_VARIABLE_NAME}}

Я надеюсь, что это поможет и даст вам немного понимания. Удачи!

ПС: Кстати. Если вы не можете редактировать свой код из-за вашего поставщика веб-сайта или движка веб-сайта, я настоятельно рекомендую отказаться от него. Как видите, это сэкономит вам массу головной боли. Для небольших и средних сайтов и небольших магазинов электронной коммерции используйте Wordpress. Для больших вещей есть другие решения. В любом случае, есть конструкторы веб-сайтов, которые просто очень плохи, но в то же время вводят в заблуждение. В основном приводит вас к проблемам, как вы описали. Не используйте их :)

person sebieire    schedule 13.04.2021