Adblock
Время для прочтения: 0 мин. 16 сек.

Как отловить пользователей расширения AdBlock

Для того, чтобы определить, что у пользователя установлено расширение для блокировки рекламы AdBlock или AdBlock Plus, достаточно в код страницы включить вызов скрипта, который бы попадал под специальные паттерны для определения рекламных блоков (например, <div> с классом .banner).

И, если скрипт не выполнился, то, соответственно, расширение для браузера установлено.

Подключаем в шапке вашей страницы скрипт, название которого попадает под паттерн AdBlock:


<script src="advert.js"></script>

Внутри данного файла (advert.js) определяем переменную:


window.adBlock = false;

Теперь достаточно выполнить простую проверку на стороне клиента:


if ( ! ( 'adBlock' in window ) ) {
  alert( 'Расширение AdBlock установлено!' );
}

Что делать с пользователями, установившими расширение AdBlock решать вам. Можно обратиться к ним с просьбой внести ваш сайт в список исключений, если проект им действительно интересен.

Ссылки

Для вставки кода используйте HTML-теги
<pre><code class="php">ваш код</code></pre>

Добавить комментарий

Такой e-mail уже зарегистрирован. Воспользуйтесь формой входа или введите другой.

Вы ввели некорректные логин или пароль

Извините, для комментирования необходимо войти.

2 комментария

по хронологии
по рейтингу сначала новые по хронологии
Александр Люханов

а как вывести сообщение если включен Element Hiding Helper for Adblock Plus.

мне прет что я ставлю пользовательскую рекламу (тематическую и для людей), а есть такой один - сидит и заблокировал. теперь банер с адблоком не показывается. показывается на сайте без адблока. хотя банер лежит ввиде картинки - в корне сайта =( устал каждый день менять div банера и адрес картинки.. что делать? дайте наводку пожалуйста.

<div id="foo-<?php echo rand(0, 9999); ?>">банер</div>