Google Tag Manager Custom JS - возвращать значение при ошибке - PullRequest
1 голос
/ 03 апреля 2020

Я пытаюсь использовать пользовательский js в Диспетчере тегов Google для отправки текста в 2 сценариях ios. Это один и тот же текст, но в зависимости от страницы, иногда он связан с гиперссылкой, а в других случаях это не

. Я получил нижеприведенный текст для работы в консоли Chrome (без "function ()", но при добавлении в Менеджер тегов Google требует наличия «возврата». Я добавил, прежде чем «попробовать», но это вызвало проблемы.

function() {
try {
        google_tag_manager["GTM-KGLGRKD"].dataLayer.get("gtm.element").parentElement.parentElement.querySelectorAll("td")[1].querySelector("a").innerText;
        } catch (error) {
       google_tag_manager["GTM-KGLGRKD"].dataLayer.get("gtm.element").parentElement.parentElement.querySelectorAll("td")[1].innerText;}
    }

Я не уверен, что это даже лучший способ получить то, что мне нужно , но есть ли какие-нибудь идеи по поводу того, чтобы сделать вышеописанное совместимым с менеджером тегов?

1 Ответ

0 голосов
/ 19 апреля 2020

Гм, знайте, что для пользовательского кода JS требуется значение для каждого события GTM, а не только для событий щелчка.

Я бы предложил что-то вроде этого

function() {
  var returnvalue;
  if ({{Click Element}}) {
    try {
      returnvalue = {{Click Element}}.parentElement.parentElement.querySelectorAll("td")[1].querySelector("a").innerText;
    } catch (error) {
      returnvalue = {{Click Element}}.parentElement.parentElement.querySelectorAll("td")[1].innerText;
    }
  }
  return returnvalue;
}

{{Click Элемент}} является необязательной встроенной переменной, которую необходимо включить в GTM перед ее использованием

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...