Мы в твиттере Мы в телеграме!

Провеббер » DataLife Engine » DLE хаки » Постраничный фильтр by Sander

Набор в команду! Ведется набор в команду, для наполнения сайта новым, интересным контентом. Если у тебя есть предложения, свободное время, ты обладаешь интересным контентом, и хочешь поделиться с другими?
Обращайся к нам в ЛС группы Вконтакте.

Постраничный фильтр by Sander

Данный материал предоставлен сайтом ProWebber.cc исключительно в ознакомительных целях. Администрация не несет ответственности за его содержимое.
Скачать бесплатно Постраничный фильтр by Sander.

Этот хак позволяет скрывать информацию в шаблонах на определенных страницах. Работает по аналогии с [aviable= и [category=, но основывается на страницах навигации.
[page=x]..[/page]
вывод информации на указанных страницах навигации
[not-page=x]...[/not-page]
вывод информации на всех страницах навигации кроме указанных
где x:
1|3|5|6|7|20 - перечисляем номера страниц;
1-50 - указываем диапазон страниц;

Например если вы хотите чтобы информация выводилась только на 5й странице пишем:
[page=5]Текст выводимый на 5й странице[/page]


Чтобы выводилась только на главной, везде кроме первых 3 страниц:
[aviable=main][not-page=1-3]тут выводимый текст[/not-page][/aviable]


Установка:
Открыть файл /engine/classes/templates.class.php
Найти строку:
        $this->template = file_get_contents( $this->dir . DIRECTORY_SEPARATOR . $tpl_name );

После нее вставить:
        if (strpos ( $this->template, "[page=" ) !== false) $this->template = preg_replace ( "#\\[page=(.+?)\\](.*?)\\[/page\\]#ies", "\$this->check_page('\\1', '\\2')", $this->template );
        if (strpos ( $this->template, "[not-page=" ) !== false) $this->template = preg_replace ( "#\\[not-page=(.+?)\\](.*?)\\[/not-page\\]#ies", "\$this->check_page('\\1', '\\2', false)", $this->template );



Найти строку:
        $template = file_get_contents( $this->dir . DIRECTORY_SEPARATOR . $tpl_name );

После нее вставить:
        if (strpos ( $template, "[page=" ) !== false) $template = preg_replace ( "#\\[page=(.+?)\\](.*?)\\[/page\\]#ies", "\$this->check_page('\\1', '\\2')", $template );
        if (strpos ( $template, "[not-page=" ) !== false) $template = preg_replace ( "#\\[not-page=(.+?)\\](.*?)\\[/not-page\\]#ies", "\$this->check_page('\\1', '\\2', false)", $template );


Найти строку:
    function check_module($aviable, $block, $action = true) {

ПЕРЕД ней вставить:
    function check_page($pages, $block, $action = true) {
        $cstart = intval($_GET['cstart']);
        if($cstart<1) $cstart=1;
        if(strpos($pages, "-") !== false){
            $pages_arr = explode( '-', $pages );
            $pages = array();
            for($i=$pages_arr[0];$i<=$pages_arr[1];$i++) $pages[] = $i;
        }else $pages = explode( '|', $pages );
        $block = str_replace( '\"', '"', $block );
        if( $action ) {
            if( ! (in_array( $cstart, $pages )) ) return "";
            else return $block;
        } else {
            if( (in_array( $cstart, $pages )) ) return "";
            else return $block;
        }
    }


Версия DLE: старше 7.5

На случай, если всеядный парсер съел слеши или кавычки:
page-filter [728 b] (cкачиваний: 113)
MD5: f798e3a329ef0bbf9d56357387e7bb84


С Уважением,
Олег Александрович a.k.a Sander


Дополнительные ссылки на скачивание ТОЛЬКО для зарегистрированных


-3
Просмотры: 11 677 :: Комментарии (3) :: :: Нужна помощь? Задайте вопрос на форуме ::
Теги: Sander, page, фильтр
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

#1xfzsa

  • 31 октября 2011 11:26
  • Регистрация: 26.10.2011
  • Был(а) онлайн: 15.11.2011
  • Комментариев: 2
  • -4
Sander
мда, упячька! ты как всегда какой нибудь гамно код , мод напишешь.

#2Nirdana

  • 31 октября 2011 19:22
  • Регистрация: 30.10.2011
  • Был(а) онлайн: 31.10.2011
  • Комментариев: 1
  • -3
Тестирование животных

#3djinn11

  • 3 марта 2012 05:09
  • Регистрация: 17.01.2010
  • Был(а) онлайн: 31.10.2017
  • Комментариев: 55
  • -3
Полезный мод! Те кто не понимает для чего он может пригодится, то уже вряд ли поймет....
P.S.Лишь бы работал...

Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.

Архив новостей
Декабрь 2024 (10)
Ноябрь 2024 (9)
Октябрь 2024 (169)
Сентябрь 2024 (13)
Август 2024 (60)
Июль 2024 (12)

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