• DONATE to NULLED!
    Форуму и его команде можно помочь, мотивировать модераторов разделов.
    Помогите модератору этого раздела killoff лично.

Помощь [help] Ротатор pop-up баннеров для DLE (на JavaScript)

Статус
В этой теме нельзя размещать новые ответы.

ox1dex

Писатель
Регистрация
12 Май 2008
Сообщения
9
Реакции
1
Здравствуйте уважаемые пользователи форума.

Перед тем как задать вопрос сразу напишу, что с помощью поиска по форуму ответа не нашел (не исключено, что плохо искал).


Недавно на сайте _4dle.ru нашел ротатор для pop-up баннеров, написанный на javascript - _http://4dle.ru/hacks/1147156074-rotator-pop-up-bannerov-dlja-dle.html

Хочу с помощью него поставить на свой сайт 2 pop-up баннера, но так чтобы при заходе на сайт сначала открывался один pop-up баннер, а при обновлении страницы (или при переходе на другую) - показывался второй баннер.

Пытался поставить хак по инструкции в новости на _4dle.ru, но так и не получилась, уж больно автор сей новости постарался сделать ее неразборчивой...

Поэтому прошу Вас помочь мне разобраться как настроить данный хак, чтобы он был работоспособным.

Интересует именно правильное заполнение файла "2popup.js":

function getCookieVal (offset)
{
var endstr = document.cookie.indexOf (";", offset);
if (endstr == -1)
endstr = document.cookie.length;
return unescape(document.cookie.substring(offset, endstr));
}
function SetCookie (name, value)
{
var argv = SetCookie.arguments;
var argc = SetCookie.arguments.length;
var expires = (argc > 2) ? argv[2] : null;
var path = (argc > 3) ? argv[3] : null;
var domain = (argc > 4) ? argv[4] : null;
var secure = (argc > 5) ? argv[5] : false;
document.cookie = name + "=" + escape (value) +
((expires == null) ? "" : ("; expires=" +
expires.toGMTString())) +
((path == null) ? "" : ("; path=" + path)) +
((domain == null) ? "" : ("; domain=" + domain)) +
((secure == true) ? "; secure" : "");
}
function GetCookie (name)
{
var arg = name + "=";
var alen = arg.length;
var clen = document.cookie.length;
var i = 0;
while (i<clen)
{
var j = i + alen;
if (document.cookie.substring(i, j) == arg)
return getCookieVal (j);
i = document.cookie.indexOf(" ", i) + 1;
if (i == 0)
break;
}
return null;
}
banner=GetCookie("banner");
if (banner!=null)
{
if (banner == 2)
{
document.write("<script LANGUAGE='Javascript' SRC='http://pop/js.php'></SCRIPT>");
SetCookie("banner",1);
}
else
{
document.write("<script LANGUAGE='Javascript' SRC='http://protizer.ru/popup.php?id=1&site=1'></SCRIPT><link rel='stylesheet' href='http://protizer.ru/pop_style1.css' type='text/css'>");
SetCookie("banner",2);
}
}
else
{
document.write("<script LANGUAGE='Javascript' SRC='http://protizer.ru/popup.php?id=1&site=1'></SCRIPT><link rel='stylesheet' href='http://protizer.ru/pop_style1.css' type='text/css'>");
SetCookie("banner",2);
}

Пробовал просто заменить коды партнерки на свои, но ничего не вышло, при открытии сайта нет ни одного pop-up баннера.

Пожалуйста, помогите решить эту проблему. Заранее большое спасибо всем отписавшимся в этой теме.
 
на самый лучший, себе раньше ставил, когда попы вертел на сайтах:
Код:
Установка:
в index.php найти
Цитата:$tpl->load_template('main.tpl'); 


ниже добавить:

$popup1="КОД-попапа1";
//$popup2="ВТОРОГО";
if (isset($_COOKIE['popup_showed'])){
$tpl->set('{popup1}', "");
// $tpl->set('{popup2}', "");
} else {
set_cookie ("popup_showed", $member_id['name'], time()+3600*24);
$tpl->set('{popup1}', $popup1);
//$tpl->set('{popup2}', $popup2);
} 


Внимание: вместо КОД-попапа1 вставляйте код вашего рекламного сообщения, предварительно заменив в нем все двойные кавычки на одинарные " -> ' 

Если у вас несколько всплывающих окон, то раскомментируйте (удалите // в начале) строки со словами popup2.
 
на самый лучший, себе раньше ставил, когда попы вертел на сайтах:
Код:
Установка:
в index.php найти
Цитата:$tpl->load_template('main.tpl'); 


ниже добавить:

$popup1="КОД-попапа1";
//$popup2="ВТОРОГО";
if (isset($_COOKIE['popup_showed'])){
$tpl->set('{popup1}', "");
// $tpl->set('{popup2}', "");
} else {
set_cookie ("popup_showed", $member_id['name'], time()+3600*24);
$tpl->set('{popup1}', $popup1);
//$tpl->set('{popup2}', $popup2);
} 


Внимание: вместо КОД-попапа1 вставляйте код вашего рекламного сообщения, предварительно заменив в нем все двойные кавычки на одинарные " -> ' 

Если у вас несколько всплывающих окон, то раскомментируйте (удалите // в начале) строки со словами popup2.

Сейчас поставил код, но почему то баннеры опять не отоброжаются (вообще, как будто их и нет). В html коде страницы тоже не нашел... Что это может быть? Версия DLE - 6.5

Подскажите пожалуйста.
 
  • Заблокирован
  • #4
Сейчас поставил код, но почему то баннеры опять не отоброжаются (вообще, как будто их и нет). В html коде страницы тоже не нашел... Что это может быть? Версия DLE - 6.5

Подскажите пожалуйста.

Добавь в шаблон main.tpl
2 кода: {popup1} и {popup2}
Тогда должно будет все работать.
 
Добавь в шаблон main.tpl
2 кода: {popup1} и {popup2}
Тогда должно будет все работать.

извини я про это не написал, думал это и так понятно. естественно надо это вставить в main.tpl... я это вставлял после {headers}
 
Уже разобрался, спасибо что объяснили. :)
 
на самый лучший, себе раньше ставил, когда попы вертел на сайтах:
Код:
Установка:
в index.php найти
Цитата:$tpl->load_template('main.tpl'); 
 
 
ниже добавить:
 
$popup1="КОД-попапа1";
//$popup2="ВТОРОГО";
if (isset($_COOKIE['popup_showed'])){
$tpl->set('{popup1}', "");
// $tpl->set('{popup2}', "");
} else {
set_cookie ("popup_showed", $member_id['name'], time()+3600*24);
$tpl->set('{popup1}', $popup1);
//$tpl->set('{popup2}', $popup2);
} 
 
 
Внимание: вместо КОД-попапа1 вставляйте код вашего рекламного сообщения, предварительно заменив в нем все двойные кавычки на одинарные " -> ' 
 
Если у вас несколько всплывающих окон, то раскомментируйте (удалите // в начале) строки со словами popup2.
=========================

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

зы ты же сам себе ответил на свое высказывание, что контролируются куки, если первая попа была показана, то естественно ее не будет а будет вторая :)
 
Еще раз повторяю, что по твоему коду не будут они по очереди вылазить, а оба сразу сам этим кодом пользовался одно время. Вот код который выводит по очереди pop-up:

<?php
if (isset($_COOKIE['banner']))
{
$banner=htmlspecialchars($_COOKIE['banner']);
if ($banner=="somethingelse")
{
echo "КОД ПЕРВОЙ ПАРТНЕРКИ";
setcookie("banner","protizer");
}
else
{
echo "КОД ВТОРОЙ ПАРТНЕРКИ";
setcookie("banner","somethingelse");
}
}
else
{
echo "КОД ТРЕТЬЕЙ ПАРТНЕРКИ";
setcookie("banner","protizer");
}
?>

код каторый нужно вставить в main.tpl перед хедером и заменяем все кавычки на одинарные (внимательнее)

Работать должно везде где есть PHP, но в DLE выполнение php в шаблонах по умолчанию запрещено. Надо это исправить... Открываем index.php ищем строчку:

echo $tpl->result['main'];

и заменяем её на:

eval (' ?' . '>' . $tpl->result['main'] . '<' . '?php ');

Все готово!

================================================

Вот еще один на js:

По просьбе многих вэб мастеров, аналог скрипта на php теперь написан на .js . В отличии скрипта на php он может использоваться в шаблонах. Необходимо лишь вставить в шаблон строку
<script LANGUAGE="Javascript" SRC="http://yoursite.com/2popup.js"></SCRIPT>

1. Создаем файл 2popup.js с таким содержанием:

function getCookieVal (offset)
{
var endstr = document.cookie.indexOf (";", offset);
if (endstr == -1)
endstr = document.cookie.length;
return unescape(document.cookie.substring(offset, endstr));
}
function SetCookie (name, value)
{
var argv = SetCookie.arguments;
var argc = SetCookie.arguments.length;
var expires = (argc > 2) ? argv[2] : null;
var path = (argc > 3) ? argv[3] : null;
var domain = (argc > 4) ? argv[4] : null;
var secure = (argc > 5) ? argv[5] : false;
document.cookie = name + "=" + escape (value) +
((expires == null) ? "" : ("; expires=" +
expires.toGMTString())) +
((path == null) ? "" : ("; path=" + path)) +
((domain == null) ? "" : ("; domain=" + domain)) +
((secure == true) ? "; secure" : "");
}
function GetCookie (name)
{
var arg = name + "=";
var alen = arg.length;
var clen = document.cookie.length;
var i = 0;
while (i<clen)
{
var j = i + alen;
if (document.cookie.substring(i, j) == arg)
return getCookieVal (j);
i = document.cookie.indexOf(" ", i) + 1;
if (i == 0)
break;
}
return null;
}
banner=GetCookie("banner");
if (banner!=null)
{
if (banner == 2)
{
document.write("<script LANGUAGE='Javascript' SRC='http://pop/js.php'></SCRIPT>");
SetCookie("banner",1);
}
else
{
document.write("<script LANGUAGE='Javascript' SRC='http://protizer.ru/popup.php?id=1&site=1'></SCRIPT><link rel='stylesheet' href='http://protizer.ru/pop_style1.css' type='text/css'>");
SetCookie("banner",2);
}
}
else
{
document.write("<script LANGUAGE='Javascript' SRC='http://protizer.ru/popup.php?id=1&site=1'></SCRIPT><link rel='stylesheet' href='http://protizer.ru/pop_style1.css' type='text/css'>");
SetCookie("banner",2);
}

2. В main.tpl (лучше внизу страницы) вставляем
<script LANGUAGE="Javascript" SRC="http://yoursite.com/2popup.js"></SCRIPT>

3. Загружаем все файлы на сервер

Внимание!!! Не забывайте в своем коде заменить двойные кавычки на одинарные!!!
SRC="http://pop/js.php" на SRC='http://pop/js.php'
 
ну ты меня совсем за идиота держишь :) работало на куче сайтов, ни на одном одновременно ни чего не появлялось. давай не будем письками мерятся, возьми сам и проверь. дальнейшие обсуждения просто бесмысленны.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху