Н
Новобранец в Маркетинге
@SwiftMarketing160 подп.
157просмотров
98.1%от подписчиков
2 октября 2024 г.
Score: 173
Отличная статья, как через скрипт GTM передать параметры UTM метки. Я использовал для передачи в ссылку для телеграм бота, а потом передавать в параметр /start и загружать в crm. Upd: При передачи UTM метки в классическом виде (utm_medium=cpc&utm_source=yandex&utm_campaign=123), телеграм обрезает параметры по модификатору "&", поэтому необходимо заменять этот параметр, к примеру на нижнее подчеркивание "_" Также телеграм имеет ограничение 64 символа на передачу в параметре "/start" Тем самым, модифицируем скрипт, чтобы параметры UTM метки в ссылке выглядели так: start=cpc_yandex_123 <script> (function() { var domainsToDecorate = [ 't.me', // добавьте или удалите домены (без https и косой черты в конце) ], queryParams = [ 'utm_medium', // добавьте или удалите параметры запроса, которые вы хотите передать 'utm_source', 'utm_campaign', 'utm_content' ]; // не редактируйте ничего ниже этой строки var links = document.querySelectorAll('a'); // проверяем, содержат ли ссылки домен из массива domainsToDecorate, а затем оформляем ссылку for (var linkIndex = 0; linkIndex < links.length; linkIndex++) { for (var domainIndex = 0; domainIndex < domainsToDecorate.length; domainIndex++) { if (links[linkIndex].href.indexOf(domainsToDecorate[domainIndex]) > -1 && links[linkIndex].href.indexOf("#") === -1) { links[linkIndex].href = decorateUrl(links[linkIndex].href); } } } // оформление ссылки параметром start function decorateUrl(urlToDecorate) { var collectedQueryParams = []; for (var queryIndex = 0; queryIndex < queryParams.length; queryIndex++) { if (getQueryParam(queryParams[queryIndex])) { collectedQueryParams.push(getQueryParam(queryParams[queryIndex])); } } var startParam = collectedQueryParams.join('_'); // соединяем параметры через _ if (startParam) { urlToDecorate = (urlToDecorate.indexOf('?') === -1) ? urlToDecorate + '?start=' + startParam : urlToDecorate + '&start=' + startParam; } return urlToDecorate; } // функция, которая получает значение параметра запроса function getQueryParam(name) { if (name = (new RegExp('[?&]' + encodeURIComponent(name) + '=([^&]*)')).exec(window.location.search)) return decodeURIComponent(name[1]); } })(); </script> Перенос параметров UTM с одной страницы на другую
157
просмотров
2575
символов
Нет
эмодзи
Нет
медиа

Другие посты @SwiftMarketing

Все посты канала →
Отличная статья, как через скрипт GTM передать параметры UTM — @SwiftMarketing | PostSniper