dle.in.ua » Хаки » Универсальный хак по показу банеров между любыми новостями!!!

Универсальный хак по показу банеров между любыми новостями!!!

Автор: swordfish от 21-04-2009, 06:54
Универсальный хак по показу банеров между любыми новостями!!!

Хочу представить мой хак, который позволяет ставить банера между любой новостью...и так к сути...

идем engine/inc/banners.php

ищем:
echo makeDropDown

заменяем на :
echo makeDropDown( array ("0" => $lang['banners_s_0'], "1" => $lang['banners_s_1'], "2" => $lang['banners_s_2'], "3" => $lang['banners_s_3'], "4" => $lang['banners_s_4'], "5" => $lang['banners_s_5'], "6" => $lang['banners_s_6'], "7" => $lang['banners_s_7'], "8" => $lang['banners_s_8'], "9" => $lang['banners_s_9'], "10" => $lang['banners_s_10'], "11" => $lang['banners_s_11'] ), "short_place", $short_place );


идем engine/modules/banners.php

ищем:
switch ($value['short_place']) //выбираем расположение баннера
{

заменяем внутренность, т.е. все case на :

case 1 : //Между 1 и 2
$ban_short['onetwo'][] = array ("text" => $value['code'], "zakr" => $value['bstick'] );
break;
case 2 : //Между 2 и 3
$ban_short['twothird'][] = array ("text" => $value['code'], "zakr" => $value['bstick'] );
break;
case 3 : //Между 3 и 4
$ban_short['thirdfor'][] = array ("text" => $value['code'], "zakr" => $value['bstick'] );
break;
case 4 : //Между 4 и 5
$ban_short['forfift'][] = array ("text" => $value['code'], "zakr" => $value['bstick'] );
break;
case 5 : //Между 5 и 6
$ban_short['fiftsix'][] = array ("text" => $value['code'], "zakr" => $value['bstick'] );
break;
case 6 : //Между 6 и 7
$ban_short['sixseven'][] = array ("text" => $value['code'], "zakr" => $value['bstick'] );
break;
case 7 : //Между 7 и 8
$ban_short['seveneith'][] = array ("text" => $value['code'], "zakr" => $value['bstick'] );
break;
case 8 : //Между 8 и 9
$ban_short['eithnine'][] = array ("text" => $value['code'], "zakr" => $value['bstick'] );
break;
case 9 : //Между 9 и 10
$ban_short['nineten'][] = array ("text" => $value['code'], "zakr" => $value['bstick'] );
break;
case 10 : //Между 10 и 11
$ban_short['tenelewen'][] = array ("text" => $value['code'], "zakr" => $value['bstick'] );
break;
case 11 : //Между 11 и 12
$ban_short['elewentwell'][] = array ("text" => $value['code'], "zakr" => $value['bstick'] );
break;


идем engine/modules/show.short.php

ищем:
if( isset( $ban_short ) ) {

заменяем внутренность на :
for($indx = 0, $max = sizeof( $ban_short['onetwo'] ), $banners_onetwo = ''; $indx < $max; $indx ++)
if( $ban_short['onetwo'][$indx]['zakr'] ) {
$banners_onetwo .= $ban_short['onetwo'][$indx]['text'];
unset( $ban_short['onetwo'][$indx] );
}
for($indx = 0, $max = sizeof( $ban_short['twothird'] ), $banners_twothird = ''; $indx < $max; $indx ++)
if( $ban_short['twothird'][$indx]['zakr'] ) {
$banners_twothird .= $ban_short['twothird'][$indx]['text'];
unset( $ban_short['twothird'][$indx] );
}
for($indx = 0, $max = sizeof( $ban_short['thirdfor'] ), $banners_thirdfor = ''; $indx < $max; $indx ++)
if( $ban_short['thirdfor'][$indx]['zakr'] ) {
$banners_thirdfor .= $ban_short['thirdfor'][$indx]['text'];
unset( $ban_short['thirdfor'][$indx] );
}
for($indx = 0, $max = sizeof( $ban_short['forfift'] ), $banners_forfift = ''; $indx < $max; $indx ++)
if( $ban_short['forfift'][$indx]['zakr'] ) {
$banners_forfift .= $ban_short['forfift'][$indx]['text'];
unset( $ban_short['forfift'][$indx] );
}
for($indx = 0, $max = sizeof( $ban_short['fiftsix'] ), $banners_fiftsix = ''; $indx < $max; $indx ++)
if( $ban_short['fiftsix'][$indx]['zakr'] ) {
$banners_fiftsix .= $ban_short['fiftsix'][$indx]['text'];
unset( $ban_short['fiftsix'][$indx] );
}
for($indx = 0, $max = sizeof( $ban_short['sixseven'] ), $banners_sixseven = ''; $indx < $max; $indx ++)
if( $ban_short['sixseven'][$indx]['zakr'] ) {
$banners_sixseven .= $ban_short['sixseven'][$indx]['text'];
unset( $ban_short['sixseven'][$indx] );
}
for($indx = 0, $max = sizeof( $ban_short['seveneith'] ), $banners_seveneith = ''; $indx < $max; $indx ++)
if( $ban_short['seveneith'][$indx]['zakr'] ) {
$banners_seveneith .= $ban_short['seveneith'][$indx]['text'];
unset( $ban_short['seveneith'][$indx] );
}
for($indx = 0, $max = sizeof( $ban_short['eithnine'] ), $banners_eithnine = ''; $indx < $max; $indx ++)
if( $ban_short['eithnine'][$indx]['zakr'] ) {
$banners_eithnine .= $ban_short['eithnine'][$indx]['text'];
unset( $ban_short['eithnine'][$indx] );
}
for($indx = 0, $max = sizeof( $ban_short['nineten'] ), $banners_nineten = ''; $indx < $max; $indx ++)
if( $ban_short['nineten'][$indx]['zakr'] ) {
$banners_nineten .= $ban_short['nineten'][$indx]['text'];
unset( $ban_short['nineten'][$indx] );
}
for($indx = 0, $max = sizeof( $ban_short['tenelewen'] ), $banners_tenelewen = ''; $indx < $max; $indx ++)
if( $ban_short['tenelewen'][$indx]['zakr'] ) {
$banners_tenelewen .= $ban_short['tenelewen'][$indx]['text'];
unset( $ban_short['tenelewen'][$indx] );
}
for($indx = 0, $max = sizeof( $ban_short['elewentwell'] ), $banners_elewentwell = ''; $indx < $max; $indx ++)
if( $ban_short['elewentwell'][$indx]['zakr'] ) {
$banners_elewentwell .= $ban_short['elewentwell'][$indx]['text'];
unset( $ban_short['elewentwell'][$indx] );
}
$onetwo = floor($config['news_number'] - ($config['news_number'] -1));
$twothird = floor( $onetwo + 1 );
$thirdfor = floor( $onetwo + 2 );
$forfift = floor( $onetwo + 3 );
$fiftsix = floor( $onetwo + 4 );
$sixseven = floor( $onetwo + 5 );
$seveneith = floor( $onetwo + 6 );
$eithnine = floor( $onetwo + 7 );
$nineten = floor( $onetwo + 8 );
$tenelewen = floor( $onetwo + 9 );
$elewentwell = floor( $onetwo + 10 );

ниже по коду должно быть:
    
}
}

далее ниже ищем:
if( isset( $middle) ) {

заменяем все это на:

if( isset( $onetwo ) ) {
if( $news_c == $onetwo ) {
$tpl->copy_template .= bannermass( $banners_onetwo, $ban_short['onetwo'] );
} else if( $news_c == $twothird ) {
$tpl->copy_template .= bannermass( $banners_twothird, $ban_short['twothird'] );
} else if( $news_c == $thirdfor ) {
$tpl->copy_template .= bannermass( $banners_thirdfor, $ban_short['thirdfor'] );
} else if( $news_c == $forfift ) {
$tpl->copy_template .= bannermass( $banners_forfift, $ban_short['forfift'] );
} else if( $news_c == $fiftsix ) {
$tpl->copy_template .= bannermass( $banners_fiftsix, $ban_short['fiftsix'] );
} else if( $news_c == $sixseven ) {
$tpl->copy_template .= bannermass( $banners_sixseven, $ban_short['sixseven'] );
} else if( $news_c == $seveneith ) {
$tpl->copy_template .= bannermass( $banners_seveneith, $ban_short['seveneith'] );
} else if( $news_c == $eithnine ) {
$tpl->copy_template .= bannermass( $banners_eithnine, $ban_short['eithnine'] );
} else if( $news_c == $nineten ) {
$tpl->copy_template .= bannermass( $banners_nineten, $ban_short['nineten'] );
} else if( $news_c == $tenelewen ) {
$tpl->copy_template .= bannermass( $banners_tenelewen, $ban_short['tenelewen'] );
} else if( $news_c == $elewentwell ) {
$tpl->copy_template .= bannermass( $banners_elewentwell, $ban_short['elewentwell'] );
}
$news_c ++;
}

ниже по коду должно быть:
$i ++;


Вот и все :) Кого порадовал жмите спасибо)))
  • Группа: Гости
  • Icq: --
  • Комментариев: 0
  • Публикаций: 0
  • моладец хороший хак пригодится + тебе
    • azik
    • Регистрация: --
    • Репутация: (||)
    • 21 апреля 2009 07:33
    • 1
    ^
  • Группа: User
  • Icq: --
  • Комментариев: 64
  • Публикаций: 6
  • спасибо.

    плюсег тебе.
    • 1ce
    • Регистрация: 15.02.2008
    • Репутация: (0|0|0)
    • 21 апреля 2009 10:05
    • 2
    ^
  • Группа: User
  • Icq: --
  • Комментариев: 52
  • Публикаций: 0
  • Super malaca +
    • sneiks
    • Регистрация: 22.08.2008
    • Репутация: (0|0|0)
    • 21 апреля 2009 11:07
    • 3
    ^
  • Группа: Гости
  • Icq: --
  • Комментариев: 0
  • Публикаций: 0
  • Зачот! Хороший хак!
    • sk8er
    • Регистрация: --
    • Репутация: (||)
    • 21 апреля 2009 11:20
    • 4
    ^
  • Группа: Гости
  • Icq: --
  • Комментариев: 0
  • Публикаций: 0
  • крапалик забыл про языковый файл))
    открываем adminpanel.lng

    ищем все:
    'banners_s_1' => ".....",

    заменяем на:
    'banners_s_1' => "Между 1 и 2",
    'banners_s_2' => "Между 2 и 3",
    'banners_s_3' => "Между 3 и 4",
    'banners_s_4' => "Между 4 и 5",
    'banners_s_5' => "Между 5 и 6",
    'banners_s_6' => "Между 6 и 7",
    'banners_s_7' => "Между 7 и 8",
    'banners_s_8' => "Между 8 и 9",
    'banners_s_9' => "Между 9 и 10",
    'banners_s_10' => "Между 10 и 11",
    'banners_s_11' => "Между 11 и 12",
    • swordfish
    • Регистрация: --
    • Репутация: (||)
    • 21 апреля 2009 12:58
    • 5
    ^
  • Группа: Гости
  • Icq: --
  • Комментариев: 0
  • Публикаций: 0
  • spasibo za hack,

    a mozno vibrat' kak mezdu 1-2 tak skazim i mezdu 5-6?

    • 123456
    • Регистрация: --
    • Репутация: (||)
    • 21 апреля 2009 13:37
    • 6
    ^
  • Группа: Гости
  • Icq: --
  • Комментариев: 0
  • Публикаций: 0
  • Попробуй нажми Ctrl и выдели то, что тебе нужно.
    • ZIK
    • Регистрация: --
    • Репутация: (||)
    • 21 апреля 2009 13:44
    • 7
    ^
  • Группа: Гости
  • Icq: --
  • Комментариев: 0
  • Публикаций: 0
  • О! ))) Какраз хотел спросить или ниукого этого хака нет :) ... ПЛЮС!
    • MONAH
    • Регистрация: --
    • Репутация: (||)
    • 21 апреля 2009 15:14
    • 8
    ^
  • Группа: Гости
  • Icq: --
  • Комментариев: 0
  • Публикаций: 0
  • swordfish - спасибо большое. Твой хак очень полезный )
    • websasha
    • Регистрация: --
    • Репутация: (||)
    • 21 апреля 2009 20:50
    • 9
    ^
  • Группа: Гости
  • Icq: --
  • Комментариев: 0
  • Публикаций: 0
  • websasha,
    самому такая реализация понадобилась вот и попробовал сделать :)

    123456,
    насчет выбора того и того за раз...думаю врятли..тут не так реализовано как с выбором категорий при добавлении новостей...можно выбрать сначала первое, а потом тот же банер поставить и между другими новостями..
    • swordfish
    • Регистрация: --
    • Репутация: (||)
    • 21 апреля 2009 21:09
    • 10
    ^
  • Группа: Гости
  • Icq: --
  • Комментариев: 0
  • Публикаций: 0
  • Сепер! молодца!
    • LarianVonLich
    • Регистрация: --
    • Репутация: (||)
    • 22 апреля 2009 11:21
    • 11
    ^
  • Группа: Гости
  • Icq: --
  • Комментариев: 0
  • Публикаций: 0
  • По-другому и не напишешь тут
    • hasgis
    • Регистрация: --
    • Репутация: (||)
    • 22 апреля 2009 11:52
    • 12
    ^
  • Группа: Гости
  • Icq: --
  • Комментариев: 0
  • Публикаций: 0
  • гут. +
    • fatery
    • Регистрация: --
    • Репутация: (||)
    • 22 апреля 2009 19:46
    • 13
    ^
  • Группа: Гости
  • Icq: --
  • Комментариев: 0
  • Публикаций: 0
  • у меня не получилось((
    • extreme-boy
    • Регистрация: --
    • Репутация: (||)
    • 25 апреля 2009 00:11
    • 14
    ^
  • Группа: User
  • Icq: --
  • Комментариев: 16
  • Публикаций: 0
  • а у меня ошибку выдает в файле show.short.php :(
    • Nhod
    • Регистрация: 20.06.2008
    • Репутация: (0|0|0)
    • 25 апреля 2009 04:12
    • 15
    ^
  • Группа: Гости
  • Icq: --
  • Комментариев: 0
  • Публикаций: 0
  • extreme-boy,
    Nhod,
    странно у всех все получается fellow
    • swordfish
    • Регистрация: --
    • Репутация: (||)
    • 2 мая 2009 23:02
    • 16
    ^
  • Группа: Гости
  • Icq: --
  • Комментариев: 0
  • Публикаций: 0
  • у меня синтаксис эрор
    • Jooy
    • Регистрация: --
    • Репутация: (||)
    • 11 мая 2009 21:37
    • 17
    ^
  • Группа: Гости
  • Icq: --
  • Комментариев: 0
  • Публикаций: 0
  • Все получаесься, просто нужжно скачать hands.php..
    Все работает, только банер нужно отцентрировать.
    • Trane911
    • Регистрация: --
    • Репутация: (||)
    • 23 мая 2009 11:18
    • 18
    ^
  • Группа: Гости
  • Icq: --
  • Комментариев: 0
  • Публикаций: 0
  • друзья, еще раз, если я правильно понял - разместить можно только один баннер, но хоть между всеми новостями?
    а разные нельзя?
    • workatclub
    • Регистрация: --
    • Репутация: (||)
    • 27 июня 2009 19:10
    • 19
    ^
  • Группа: Гости
  • Icq: --
  • Комментариев: 0
  • Публикаций: 0
  • Ребята подскажите куда ставить {banner_main}?

    А куда ставить {banner_main}?

    Ребята а куда ставить Banner_1? В шаблон? куда именнО?
    {banner_1}
    • ps4you
    • Регистрация: --
    • Репутация: (||)
    • 26 июля 2009 03:11
    • 20
    ^
  • Группа: Гости
  • Icq: --
  • Комментариев: 0
  • Публикаций: 0
  • а как выровнять баннер по центру?
    • motivator
    • Регистрация: --
    • Репутация: (||)
    • 16 августа 2009 14:40
    • 21
    ^
  • Группа: r00t Admin
  • Icq: --
  • Комментариев: 410
  • Публикаций: 391
  • Кто-то пробовал уже ставить на 8,5 версию?!

    --------------------
    • Baggio
    • Регистрация: 11.12.2007
    • Репутация: (0|0|0)
    • 28 марта 2010 18:46
    • 22
    ^
  • Группа: User
  • Icq: 451989540
  • Комментариев: 39
  • Публикаций: 0
  • у меня стало, но баннеров не видно, все нашла косяк, у меня рамки в ксс маленького маштаба были, из-за этого не выводилось, счас все гуды, спасибо за темку

    --------------------
    • nastena2005
    • Регистрация: 11.03.2009
    • Репутация: (0|0|0)
    • 15 декабря 2010 18:12
    • 23
    ^
    Информация
    Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.