Хаки и Скрипты Next Generation CMS

Просим отключить AdBlock

irbees2008 irbees2008 Опубликовано - 13 - января JS
1673 - 0
  • Адаптировал: irbees2008
  • Уровень сложности исполнения: нужны навыки css html

Всем привет. Сегодня разберем тему блокировщиков рекламы AdBlock и тому подбное. Как знаете эти расширения блокируют работу рекламных блоков, принципы у них разные. Вот несколько решений для владельцев сайтов, но я не советую применять это, если сайт интересный то пользователь сам будет отключать адблок.

Ну вариант 1 .
Скрываем весь сайт заставкой , можно распугать всех посетителей.
Скачиваем архив Вы не можете скачивать файлы с нашего сайта ,рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем. , распаковываем.
Загружаем файл adBlock.html в корень вашего сайта.
Файл adBlock.js в папку js вашего шаблона или тоже в корень как желаете,

В main.tpl подключаем файлы скрипта,

Код:
<script type="text/javascript" src="{{ tpl_url }}/js/adBlock.js"></script>

Строки кода выше добавляемым до закрывающих тегов < / head >< body >

Вариант 2
Показываем предупреждение пользователю, с просьбой отключить или добавить ваш сайт в исключение плагина AdBlock plus. Этот вариант подходит добропорядочным вебмастерам, которые не злоупотребляют рекламой на своем сайте.

1.Подключаем скрипт. Для этого в вашем шаблоне перед тегом "" добавляем строчку:
Код:
<script src="{{ tpl_url }}/js/script.js"></script>

2.Рекламу, которую нужно "защитить" от AdBlock, заключаем в блок
<div class="adb">
Рекламный код, который защищаем
</div>


Добавляем стилей:
Код:
.adb{
width:800px;
margin:20px auto;
}

3.Создаем файл с названием и расширением: "script.js". Открываем его и вставляем следующий код:

Код:
var ads ="adb";
var msg ='<div style="border: 1px dashed #f00; padding: 5px; width:800px; color:#000000 !important; margin:20px auto;"><p style="text-align:center;margin:0;"><b>Adblock Detected</b></p><p style="text-align:justify;margin:0;">Отключите пожалуйста AdBlock</p></div>';
onload=function(){
if(document.getElementsByClassName == undefined){
document.getElementsByClassName =function(className)
{
var hasClassName =newRegExp("(?:^|\\s)"+ className +"(?:$|\\s)");
var allElements = document.getElementsByTagName("*");
var results =[];
var element;
for(var i =0; (element = allElements)!=null; i++){
var elementClass = element.className;
if(elementClass && elementClass.indexOf(className)!=-1&& hasClassName.test(elementClass))
results.push(element);
}
return results;
}
}
blocked =0;
var ad_nodes = document.getElementsByClassName(ads);
for(i in ad_nodes){
if(ad_nodes.offsetHeight ==0){
blocked =1;
ad_nodes.innerHTML = msg;
}
}
}
Отображение блока настраивается в функции "var msg".Ну сам принцип работы скрипта : скрипт проверяет размер (а именно высоту) всех рекламных блоков. Если высота блока равна нулю, значит он заблокирован, а значит "выводим просилку".
Есть еще варианты, можете погуглить.

Можешь почитать и вот эту статейку "Интересная анимация в поле input"

Опрос

Ваше мнение

На каком движке ваш сайт?
Результаты

Последние комментарии

Теги

Anything in here will be replaced on browsers that support the canvas element

Статистика

  • Caйту: 3357 дней
  • Новостей: 546
  • Комменты: 254
  • Зарегистрированно : 574
  • Онлайн всего: [5]
  • Гости: [5]
  • Были сегодня : [2] Google, Яндекс
  • SQL запросов: 35
  • Генерация страницы: 0.411сек
  • Потребление памяти: 5.162 Mb 
  •   яндекс.ћетрика