Почему не работает подмена контента на сайте по UTM-меткам?

Есть скрипт по подмене по UTM но подмена не работает 100 раз проверил все вроде правильно но определенная часть кода просто не срабатывает и никаких ошибок в консоли Код JS

$(document).ready(function() {

  // Цели
  function setWhatsappGoals() {
    $('.amo-new-buttons-whatsapp-link').click(function(){
      ym(xxxxxxxx,'reachGoal','WHATSAPP_CLICK');
      gtag('event', 'WHATSAPP_CLICK');
      console.log('WHATSAPP_CLICK');
    });
    console.info('goals loaded');
  }

  setTimeout(setWhatsappGoals, 600);

  // Подмена

  var content = {
      vk: 'Дoбрый день!',
      instagram: 'Добрый дeнь!',
      yandex: 'Здрaвствуйте!',
      google: 'Здравствуйтe!',
      test: '<a href="https://api.whatsapp.com/send?phone=7999999999&amp;text=test" class="amo-new-buttons-whatsapp-link" target="_blank"></a>',
    };
  var selector = '.amo-new-buttons-whatsapp#amo-new-buttons-whatsapp';
  var utm = /utm_source=([^&]*)/g.exec(document.URL)[1];    

  function replacer(content) {
    
    

      if (utm in content) {
        console.info('Каталог контента имеет такую utm метку');
          document.querySelector(selector).innerHTML=content[utm];
      } else {
          console.info('Каталог контента не имеет такой utm метки');
      };

      console.info('replace loaded');
  };
  
  setTimeout(replacer(content), 900); 
  // replacer(content); 

})

Если перейти по ссылке site.ru/?utm_source=test2 то в консоле пишет Каталог контента не имеет такой utm метки а если test или другие vk, instagram, yandex, google то ничего не срабатывает. Подскажите в чем проблема или как сделать. Спасибо


Ответы (0 шт):