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

Поиск Постраничную разбивку для полной новости

s_root

Мастер
Регистрация
27 Окт 2007
Сообщения
202
Реакции
33
Подскажите хак для постраничного разбиения страниц для DLE 9.х
 
  • Заблокирован
  • #2
А как же {PAGEBREAK} ?
 
От 7.3-8.2 линейки вот такое было, копирую прямо весь файл, который у меня лежит. Раньше работал, сейчас перекрути на изменные файлы, возможно заработает:

PHP:
Описание: Хак предназначен для автоматической разбивки новостей на страницы.
Часто бывает, что на сайтах (особенно со статьями) необходимо вручную ставить тег {PAGEBREAK} для того что бы разбить статью на несколько страниц. Хак это делает автоматически, причем разбивает статью через определенное количество слов.

Авторы: 
код - zetar
Прикрутил, настроил - kandasoft

Установка: 

1) открываем файл engine/data/config.php

Находим:
-----------------------
'show_sub_cats' => "1",
-----------------------

Вставляем далее:
-----------------------
'page_break_news' => "500",
-----------------------

2) Открываем lanhuage/Russian/adminpanel.lng

Находим: 
-----------------------
// 6.3
-----------------------

Вставляем далее: 
-----------------------
'opt_break_news'		=>	"Авто разбивание новостей на страницы",
'opt_break_newsc'		=>	"Автоматическое разбивание новостей на страницы через определенное кол-во слов",
-----------------------

3) Открываем engine/inc/options.php

Находим: 
-----------------------
    showRow($lang['opt_sys_related_num'], $lang['opt_sys_related_numd'], "<input class=edit type=text style=\"text-align: center;\"  name='save_con[related_number]' value=\"{$config['related_number']}\" size=10>");
-----------------------

Вставляем далее: 
-----------------------
    showRow($lang['opt_break_news'], $lang['opt_break_newsc'], "<input class=edit type=text style=\"text-align: center;\"  name='save_con[page_break_news]' value=\"{$config['page_break_news']}\" size=10>");
-----------------------

4) Открываем: engine/modules/show.full.php

Находим: 
-----------------------
        if (!$news_page)
        {
            $news_page = 1;
        }
        ;
------------------------

Вставляем далее: 
------------------------
if($config['page_break_news'] != 0) {
    $add = "{PAGEBREAK}"; 
    $every = $config['page_break_news'] ; 
    $words= explode(" ",$row['full_story']); 
    $l=1;
    $co = count($words);
    for ($i=0;$i<$co;$i++) {
      if($l==$every){
       $words[$i].=$add;
       $l=0;
      }
      $l++;
    }

    $row['full_story'] = implode(" ",$words);
}
-------------------------


Пользуемся =)

Настроки обрезания находятся: админпанель -> настройка системы -> настройка вывода новостей -> Авто разбивание новостей на страницы



А так же вывод всех номеров страниц после тако разбивки кучей а не по одной:

в файле show.full.php нати:

if( $news_page < $anzahl_seiten ) { 
    $pages = $news_page + 1; 
     
    if( $config['allow_alt_url'] == "yes" ) { 
        $nextpage = " | <a href=\"" . $short_link . "page," . $pages . "," . $row['alt_name'] . ".html\">" . $lang['news_next'] . "</a>"; 
    } else { 
        $nextpage = " | <a href=\"$PHP_SELF?newsid=" . $row['id'] . "&amp;news_page=" . $pages . "\">" . $lang['news_next'] . "</a>"; 
    } 
} 

if( $news_page > 1 ) { 
    $pages = $news_page - 1; 
     
    if( $config['allow_alt_url'] == "yes" ) { 
        $prevpage = "<a href=\"" . $short_link . "page," . $pages . "," . $row['alt_name'] . ".html\">" . $lang['news_prev'] . "</a> | "; 
    } else { 
        $prevpage = "<a href=\"$PHP_SELF?newsid=" . $row['id'] . "&amp;news_page=" . $pages . "\">" . $lang['news_prev'] . "</a> | "; 
    } 
} 

$tpl->set( '{pages}', $prevpage . $lang['news_site'] . " " . $news_page . $lang['news_iz'] . $anzahl_seiten . $nextpage ); 


и заменить на:

for ($j = 1; $j <= $anzahl_seiten; $j++) 
{ 
    if ($news_page < $anzahl_seiten) 
    { 
        $news_page + 1; 
    } 
    else 
    { 
        $news_page - 1; 
    } 
     
    if ($j != $news_page) 
    { 
        if ($config['allow_alt_url'] == "yes") 
        { 
            $pages .= "<a href=\"".$short_link."page,".$j.",".$row['alt_name'].".html\">$j</a> "; 
        } 
        else 
        { 
            $pages .= "<a href=\"$PHP_SELF?newsid=".$row['id']."&news_page=$j\">$j</a> "; 
        } 
    } 
    else 
    { 
        $pages .= "<span><b>$j</b></span> "; 
    } 
} 

$tpl->set('{pages}', $pages);
 
Назад
Сверху