Как определить какой блок используется на сайте Тильда? →
Главная страница — Как пробросить UTM-метки на другую страницу?

Как пробросить UTM-метки на другую страницу?

Перебросить метки по ссылкам на странице

Данный код нужно указать в блок: Другое ⟶ T123 ⟶ HTML-код

<!-- Код для проброса UTM-меток на ссылки -->
<!-- https://roman-kosov.ru/utm-forwarding -->
<!-- Обновлённая версия без jQuery -->

<script>
t_onReady(function () {
    var search = "?" + window.location.search.split("&").filter(function(val) {
        var value = val.replace(/\?/, '');
        return value.indexOf("s_") === -1 && value.indexOf("tfc_") === -1;
    }).join("&").replace(/\?/, "");
    
    if (search !== "?") {
        var aLinks = document.querySelectorAll('a');
        var arrayLinks = Array.from(aLinks);
        arrayLinks.forEach(function (el) {
            var href = el.getAttribute("href");
            if (href && href.indexOf("roman-kosov.ru") > -1 && href.indexOf("#") === -1) {
                if (href.indexOf("?") === -1) {
                    el.setAttribute("href", href + search);
                } else {
                    el.setAttribute("href", href + search.replace("?", "&"));
                }
            }
        });
    }

});
</script>
Вместо roman-kosov.ru нужно указать свой домен, в рамках которого вы хотите прокинуть метки.
Ещё вместо "roman-kosov.ru" можно указать просто точку ("."), знак слэша ("/"), или пустоту (""), тогда метка будет пробрасываться для любых страниц.

Прокинуть UTM-метки из формы на адрес страницы успеха

Данный код нужно указать в блок: Другое ⟶ T123 ⟶ HTML-код

<!-- Код для проброса UTM-меток на страницу успеха, указанную в форме -->
<!-- https://roman-kosov.ru/utm-forwarding#forms -->

<script>
$(document).ready(function () {
    $("form[data-success-url]").each(function () {
        var url = $(this).attr("data-success-url");
        var search = "?" + window.location.search.split("&").filter(val => val.replace('?', '').indexOf('s_') !== 0).join("&").replace('?', '');
        if (search !== "?" && url != undefined && !url.includes("#")) {
            if (!url.includes("?")) {
                $(this).attr("data-success-url", url + search);
            } else {
                $(this).attr("data-success-url", url + search.replace("?", "&"));
            }
        }
    });
});
</script>
Жду ваш честный фидбэк ;)