Управления рекламой баннеров в полной новости дле сайта

Рубрика: Хаки для DLE » Хак DLE 11.2, 11.1, 11.0, 10.6, 10.5, 10.4, 10.3, 10.2, 10.1, 10.0, 9.8, 9.7, 9.6, 9.5, 9.4, 9.3, 9.2, 9.0
Управления рекламой баннеров в полной новости дле сайта
Хак для DLE с тонкой настройкой баннерной рекламы под названием ShortBanners v1.0 позволяет легко прямо при добавлении новостей, вставлять между постами рекламные блоки установленные в админ панели DataLife Engine. В результате управление рекламными материалами на сайте, вы можете указывать после какой по счёту новости выводить баннер при просмотре кратких новостей.
Зачем спросите это нужно? А, для того, чтобы увеличения прибыли на сайте, так как если вы на своем ресурсе работает с рекламами Яндекс Директ и AdSense от Гугла. то это самый лучший вариант заработка на них. Особенно если вы поступите как это делают многие, и сделаете почти не отличимые заголовки сайта с рекламами от Директа или Адсенса. Тем самым люди будут случайно нажимать на рекламу, вместо перехода на полную новость, иногда такая реклама просто лучше воспринимается и люди сам охотно переходят на интересующие их сайта рекламы Яндекс Директ и AdSense от Гугла.
Управления рекламой баннеров в полной новости дле сайта
Особенности:
- автоматически формирует список после какой по счёту новости выводить баннер, в зависимости от количества новостей для вывода на главной странице;
- уменьшено количество логических операций, по сравнению со стандартной функцией ДЛЕ по управлению баннерами между краткими новостями

1. Файл: /engine/inc/banners.php
Найти:

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'] ), "short_place", $short_place );


Заменить на:

    $banners_s = array("0" => $lang['banners_s_0']);    for($i=1; $i<=$config['news_number']; $i++) {        $banners_s[$i] = "После {$i}";    }    echo makeDropDown( $banners_s, "short_place", $short_place );


2. Файл: /engine/modules/banners.php
Найти:

                switch ($value['short_place']) //выбираем расположение баннера                {                    case 1 : //вверх                        $ban_short['top'][] = array ("text" => $value['code'], "zakr" => $value['bstick'] );                        break;                                        case 2 : //центр                        $ban_short['cen'][] = array ("text" => $value['code'], "zakr" => $value['bstick'] );                        break;                                        case 3 : //низ                        $ban_short['down'][] = array ("text" => $value['code'], "zakr" => $value['bstick'] );                        break;                                        case 4 : //вверх,низ                        $ban_short['top'][] = array ("text" => $value['code'], "zakr" => $value['bstick'] );                        $ban_short['down'][] = array ("text" => $value['code'], "zakr" => $value['bstick'] );                        break;                                        case 5 : //центр,низ                        $ban_short['cen'][] = array ("text" => $value['code'], "zakr" => $value['bstick'] );                        $ban_short['down'][] = array ("text" => $value['code'], "zakr" => $value['bstick'] );                        break;                                        case 6 : //Вверх,центр                        $ban_short['cen'][] = array ("text" => $value['code'], "zakr" => $value['bstick'] );                        $ban_short['top'][] = array ("text" => $value['code'], "zakr" => $value['bstick'] );                        break;                                        case 7 : //вверх,центр,низ                        $ban_short['cen'][] = array ("text" => $value['code'], "zakr" => $value['bstick'] );                        $ban_short['top'][] = array ("text" => $value['code'], "zakr" => $value['bstick'] );                        $ban_short['down'][] = array ("text" => $value['code'], "zakr" => $value['bstick'] );                        break;                }


Заменить на:

                if($value['short_place']>0) $ban_short[$value['short_place']][] = $value['code'];


3. Файл: /engine/modules/show.short.php
Удалить:

        if( isset( $ban_short ) ) {            for($indx = 0, $max = sizeof( $ban_short['top'] ), $banners_topz = ''; $indx < $max; $indx ++)                if( $ban_short['top'][$indx]['zakr'] ) {                    $banners_topz .= $ban_short['top'][$indx]['text'];                    unset( $ban_short['top'][$indx] );                }                        for($indx = 0, $max = sizeof( $ban_short['cen'] ), $banners_cenz = ''; $indx < $max; $indx ++)                if( $ban_short['cen'][$indx]['zakr'] ) {                    $banners_cenz .= $ban_short['cen'][$indx]['text'];                    unset( $ban_short['cen'][$indx] );                }                        for($indx = 0, $max = sizeof( $ban_short['down'] ), $banners_downz = ''; $indx < $max; $indx ++)                if( $ban_short['down'][$indx]['zakr'] ) {                    $banners_downz .= $ban_short['down'][$indx]['text'];                    unset( $ban_short['down'][$indx] );                }                        $middle = floor( $config['news_number'] / 2 );            $middle_s = floor( ($middle - 1) / 2 );            $middle_e = floor( $middle + (($config['news_number'] - $middle) / 2) + 1 );        }


Найти:

        if( isset( $middle ) ) {                        if( $news_c == $middle_s ) {                $tpl->copy_template .= bannermass( $banners_topz, $ban_short['top'] );            } else if( $news_c == $middle ) {                $tpl->copy_template .= bannermass( $banners_cenz, $ban_short['cen'] );            } else if( $news_c == $middle_e ) {                $tpl->copy_template .= bannermass( $banners_downz, $ban_short['down'] );            }            $news_c ++;        }


Заменить на:
        if($ban_short[$news_c]) {            $banner_rand = array_rand($ban_short[$news_c]);            $tpl->copy_template .= $ban_short[$news_c][$banner_rand];        }        $news_c ++;


«Автор:»MSW
Версия : 8.*-9.*

Рекомендуем Управления рекламой баннеров в полной новости хаки для DataLife Engine 9.x
  • 60
Рубрика: DLE хаки » Хак для DLE
Ранее » Cлайдер категорий для дле модуля Block.Pro.2« Далее Улучшение вида AddNews добавления новостей
Добавление комментарияОставить комментарий
  • № :6
  • 18 марта 2015 16:24
Цитата: yorg
Цитата: dle9
Цитата: yorg
А на DLE 10.3 ПОЙДЕТ???

вряд ли, у автора может быть адаптированный вариант для вашей версии

А кто автор?

там же написано в новости «Автор:»MSW
  • № :5
  • 18 марта 2015 15:27
Цитата: dle9
Цитата: yorg
А на DLE 10.3 ПОЙДЕТ???

вряд ли, у автора может быть адаптированный вариант для вашей версии

А кто автор?
  • № :4
  • 18 марта 2015 15:25
Цитата: yorg
А на DLE 10.3 ПОЙДЕТ???

вряд ли, у автора может быть адаптированный вариант для вашей версии
  • № :3
  • 18 марта 2015 14:53
А на DLE 10.3 ПОЙДЕТ???
  • № :2
  • 12 марта 2013 22:30
после этого хака, начали показываться баннеры которые были отключены и по очереди, вернул все обратно
  • № :1
  • 27 августа 2012 22:26
wink
Все работает ,очень удобно!