Звернутися до підтримки

Відповідаємо електронною поштою, зазвичай протягом двох днів.

Google reCAPTCHA перевіряє це звернення на зловживання; дані передаються до Google. Скрипт завантажується лише тоді, коли ви відкриваєте цю форму.

← Усі записи

Рахувати кліки, не читаючи тексту посилання

Лічильник відповідає на питання «скільки прийшло». Кориснішим питанням зазвичай є «скільки щось зробило» — натиснули на посилання контактів, відкрили завантаження, пішли на профіль у соцмережі. У цієї служби є для цього події від самого їх створення: поставте data-s4u-event="kontakt" на елемент, і кліки по ньому рахуються під цією назвою.

Майже ніхто цим не користувався, бо майже ніхто не знав. Тому тепер є прапорець: рахувати кліки за посиланнями автоматично, без атрибутів. Цікавий не перемикач. Цікаво те, як зветься полічене.

Не текст посилання

Очевидною назвою для кліка є слова, на які натиснув відвідувач. Вона ж і хибна.

Текст посилання — це вільний зміст. Посилання може казати «Замовлення 4711» або «Повідомлення від Анни», нести номер будинку, номер броні, поштову адресу. Усе це потрапило б до стовпця бази даних із назвою name і там би й лишилося. Політика приватності цієї служби каже, що статистика не містить персональних даних, і це має лишатися правдою, не залежачи від того, що власник сайту випадково напише всередині тега посилання.

Є й друга проблема, менша, але справжня: двадцять посилань зі словом «тут» на одній сторінці — це одна назва, яка нічого не каже, а те саме посилання в одинадцяти перекладах було б одинадцятьма назвами з п’ятдесяти, покладених лічильникові.

Тому назва береться зі шляху призначення. Його обрав власник сайту, він сталий, і він уже є ключем, яким користується посторінкова статистика.

Три нормалізації, кожна зі своєї причини

  • Мовний префікс прибрано. /de/blog і /pl/blog — це одна й та сама сторінка. Без цього сам лише перемикач мови багатомовного сайту з’їв би одинадцять із п’ятдесяти назв.
  • Послідовності з п’яти й більше цифр стають n. Дві сторінки статистики з різними номерами лічильників — це не дві сторінки, а двічі одна.
  • Посилання, що виходять із сайту, стають ex- плюс хост. Шлях чужої сторінки власникові нічого не каже. А куди пішов клік — каже.

Якорі, mailto:, tel: і javascript: пропускаються — це не ті цілі, для яких комусь потрібне число. Елементи, що вже мають власну назву події, теж пропускаються, інакше той самий клік рахувався б двічі.

У що це обходиться

Скрипт у браузері виріс на 1022 байти в стисненому вигляді, один раз за перше відвідування. Більше ні в що: ознака їде в запиті, який скрипт і так робить при кожному завантаженні сторінки — у запиті, який досі завжди відповідав тією самою сталою — отже другої поїздки немає. На сервері список лічильників із увімкненим перемикачем живе в невеликому файлі, а не в запиті, бо цей запит — повний прохід по 166 433 рядках і коштує виміряних 143,9 мілісекунди.

Типово вимкнено, і таким лишається. За цього обсягу увімкнення всюди додало б близько дев’яти тисяч записів на день до найнавантаженішої на запис таблиці, яка тут є. Це те, що вмикають, а не те, що з тобою стається.

Реклама