Я просто хочу узнать, сколько пользователей моего сайта используют adblock (плюс / pro / что угодно). Для этого я реализовал следующее:
Теоретически это должно означать, например: 100 html_visits и 90 js_visits означают, что 10 пользователей запросили html-файл, но не js-файл (который был заблокирован AdBlock)
Моя проблема сейчас в том, что у меня 75,2% пользователей с рекламным блоком, что слишком много по сравнению с другими исследованиями (25-30%) для моей страны. Мой веб-сайт не ориентирован на конкретные технологии, поэтому процент не должен быть таким высоким.
Где ошибка в моей концепции?
Я добавляю метку времени к URL-адресу файла js (/ad_server/banner/ad.js?1435143401) и отключаю кэш для этого файла (Cache-Control: нет хранилища, нет кэша, необходимо подтвердить заново, max-age = 0 » ; Pragma: ‘no-cache’) для предотвращения проблем с кешем.
Похоже, что использование файла с именем ad.js само по себе будет заблокировано Adblockers. Так как я не вижу ваш код, я не могу сказать вам, если ваша логика испорчена или что-то еще
Я написал что-то подобное на днях.
<html>
<head>
<script src="adcity.js"></script>
</head>
<body>
<script>
if( window.adblockerCheck === undefined ){
// adblocker blocked our fake adcity.js file
// send event to GA or other analytics provider
}
</script>
</body>
</html>
И тогда все, что есть в файле adcity.js:
window.adblockerCheck = true;
Это простая версия. На работе я закончил делать jquery $ .ajax (‘adcity.js’) и проверять состояние и прочее в обратном вызове .complete (). Таким образом, мы можем проверить по разным причинам, что запрос может быть неудачным, например, «тайм-аут» и т. Д.
Других решений пока нет …