Каков наилучший способ записи статистики по количеству посетителей, посещающих мой сайт, которые настроили свой браузер для блокировки рекламы?
Как узнать, блокирует ли веб-клиент рекламные объявления?
Ответ 1
Так как такие программы, как AdBlock, на самом деле никогда не запрашивают рекламу, вам нужно будет посмотреть журналы сервера, чтобы узнать, пользовался ли тот же пользователь на веб-странице, но не получил доступ к объявлению. Предполагается, что объявление находится на одном сервере.
Если ваши объявления находятся на отдельном сервере, я бы предложил, чтобы это было невозможно.
Лучший способ запретить пользователям блокировать рекламные объявления - иметь встроенные текстовые рекламные объявления, которые генерируются сервером и вставляются внутри вашего html.
Ответ 2
Добавьте идентификатор пользователя в запрос для объявления:
<img src="./ads/viagra.jpg?{user.id}"/>
таким образом вы можете проверить, какие объявления видят пользователи.
Ответ 3
Вам нужно подумать о разных способах блокировки рекламы. Первое, на что нужно обратить внимание, - это то, что они запускают noscript, поэтому вы можете добавить script, который будет проверять это.
Следующее - посмотреть, блокируют ли они вспышку, это сделать небольшой фильм.
Если вы посмотрите на сайт adblock, есть некоторые указания о том, как он блокирует:
Как работает скрытие элемента?
Если вы посмотрите дальше на эту страницу, вы увидите, что обычное хромированное зондирование не будет работать, поэтому вам нужно попробовать и проанализировать измененный DOM.
Ответ 4
AdBlock forum говорит, это используется для обнаружения AdBlock. После некоторой настройки вы можете использовать это, чтобы собрать некоторую статистику.
setTimeout("detect_abp()", 10000);
var isFF = (navigator.userAgent.indexOf("Firefox") > -1) ? true : false,
hasABP = false;
function detect_abp() {
if(isFF) {
if(Components.interfaces.nsIAdblockPlus != undefined) {
hasABP = true;
} else {
var AbpImage = document.createElement("img");
AbpImage.id = "abp_detector";
AbpImage.src = "/textlink-ads.jpg";
AbpImage.style.width = "0";
AbpImage.style.height = "0";
AbpImage.style.top = "-1000px";
AbpImage.style.left = "-1000px";
document.body.appendChild(AbpImage);
hasABP = (document.getElementById("abp_detector").style.display == "none");
var e = document.getElementsByTagName("iframe");
for (var i = 0; i < e.length; i++) {
if(e[i].clientHeight == 0) {
hasABP = true;
}
}
if(hasABP == true) {
history.go(1);
location = "http://www.tweaktown.com/supportus.html";
window.location(location);
}
}
}
}
Ответ 5
Я предполагаю, что вы могли бы сравнить рекламные отпечатки с просмотрами страниц на своем веб-сайте (которые вы можете получить из своего программного обеспечения для аналитики).