From afb75b7cf70819869ccaf35752c8c117352ecf3e Mon Sep 17 00:00:00 2001 From: erjemin Date: Wed, 16 Sep 2026 01:43:40 +0300 Subject: [PATCH] =?UTF-8?q?mod:=20=D0=B3=D0=BE=D1=82=D0=BE=D0=B2=D0=BE=20?= =?UTF-8?q?=D0=B4=D0=BB=D1=8F=20Google=20Tag=20Manager?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hypn0/templates/_base.html | 3 +- public/static/js/analytics.js | 78 ++++++++--------------------------- 2 files changed, 20 insertions(+), 61 deletions(-) diff --git a/hypn0/templates/_base.html b/hypn0/templates/_base.html index de7d243..4eb0590 100644 --- a/hypn0/templates/_base.html +++ b/hypn0/templates/_base.html @@ -146,6 +146,7 @@ val=>{if(val)document.documentElement.classList.add('dark');else document.docume {% block CONTENT %}{% endblock CONTENT %} {# {% include "blocks/footer.jinja2" %} #}{% endblock BODY %}{% if not ALLOW_TRACKING %}{# Если клиент еще не согласился на отслеживание покажем ему уведомление #}{% include "block/allow-tracking.html" %}{% else %}{# Если согласился -- отслеживаем#} -{% endif %} + +{% endif %} {% block ADD_JS1 %}{% endblock ADD_JS1 %}{% block ADD_JS2 %}{% endblock ADD_JS2 %}{% block ADD_JS3 %}{% endblock ADD_JS3 %} \ No newline at end of file diff --git a/public/static/js/analytics.js b/public/static/js/analytics.js index f7088f2..1ab9bc4 100644 --- a/public/static/js/analytics.js +++ b/public/static/js/analytics.js @@ -1,26 +1,27 @@ // analytics.js — Аналитика и счетчики посещений для hypn0.xyz -// Версия: 1.0 | Дата: 2026-05-15 -// Содержит: Google Analytics 4, Yandex.Metrika, Top.Mail.Ru +// Версия: 1.2 | Дата: 2026-09-16 +// Содержит: Google Tag Manager, Yandex.Metrika (function() { 'use strict'; // ============================================================================ - // Google Analytics 4 (GA4) - // ID: GT-XXXXXXXX + // Google Tag Manager (GTM) + // ID: GTM-5FVH3KMJ // ============================================================================ - (function() { - var script = document.createElement('script'); - script.async = true; - script.src = 'https://www.googletagmanager.com/gtag/js?id=GT-XXXXXXXX'; - document.head.appendChild(script); - - window.dataLayer = window.dataLayer || []; - function gtag(){dataLayer.push(arguments);} - window.gtag = gtag; - gtag('js', new Date()); - gtag('config', 'GT-XXXXXXXX'); - })(); + (function(w, d, s, l, i) { + w[l] = w[l] || []; + w[l].push({ + 'gtm.start': new Date().getTime(), + event: 'gtm.js' + }); + var f = d.getElementsByTagName(s)[0], + j = d.createElement(s), + dl = l != 'dataLayer' ? '&l=' + l : ''; + j.async = true; + j.src = 'https://www.googletagmanager.com/gtm.js?id=' + i + dl; + f.parentNode.insertBefore(j, f); + })(window, document, 'script', 'dataLayer', 'GTM-5FVH3KMJ'); // ============================================================================ // Yandex.Metrika (Яндекс.Метрика) @@ -49,50 +50,7 @@ }); })(); - // ============================================================================ - // Top.Mail.Ru counter (Рейтинг@Mail.ru) - // ID: 1234567 - // ============================================================================ - (function() { - var _tmr = window._tmr || (window._tmr = []); - _tmr.push({ - id: "1234567", - type: "pageView", - start: (new Date()).getTime() - }); - - (function(d, w, id) { - if (d.getElementById(id)) return; - var ts = d.createElement("script"); - ts.type = "text/javascript"; - ts.async = true; - ts.id = id; - ts.src = "https://top-fwz1.mail.ru/js/code.js"; - - var f = function() { - var s = d.getElementsByTagName("script")[0]; - s.parentNode.insertBefore(ts, s); - }; - - if (w.opera == "[object Opera]") { - d.addEventListener("DOMContentLoaded", f, false); - } else { - f(); - } - })(document, window, "tmr-code"); - - // Добавляем изображение для noscript - if (!window.noScriptAdded) { - window.noScriptAdded = true; - var noscriptDiv = document.createElement('div'); - noscriptDiv.style.display = 'none'; - noscriptDiv.innerHTML = 'Top.Mail.Ru'; - document.body.appendChild(noscriptDiv); - } - })(); - })(); -// Экспортируем gtag в глобальный контекст для возможности использования в коде -// window.gtag доступна через глобальную переменную +// window.dataLayer доступна через глобальную переменную