DLE 8.2 постраничная навигация в полной новости

G
На сайте с 24.07.2009
Offline
31
2821

Прошу помощи у знатоков. Помогите реализовать постраничную навигацию в полной новости. там вывод страниц такой:

Предыдущая страница | Страница 2 из 11 | Следующая страница

как реализовать что бы вообще все страницы выводились, т.е.

1 2 3 4 5 6 7 8 9 и т.д.

в DLE 8.2 в файле show.full.php после 170 строки.код:

		//

// обработка страниц
//
if( $view_template == "print" ) {

$row['full_story'] = str_replace( "{PAGEBREAK}", "", $row['full_story'] );
$row['full_story'] = str_replace( "{pages}", "", $row['full_story'] );
$row['full_story'] = preg_replace( "'\[PAGE=(.*?)\](.*?)\[/PAGE\]'si", "\\2", $row['full_story'] );


} else {

$row['full_story'] = $news_seiten[$news_page - 1];

$row['full_story'] = preg_replace( '#(\A[\s]*<br[^>]*>[\s]*|<br[^>]*>[\s]*\Z)#is', '', $row['full_story'] ); // remove <br/> at end of string
$news_seiten = "";
unset( $news_seiten );

if( $anzahl_seiten > 1 ) {

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 );

if( $config['allow_alt_url'] == "yes" ) {

$replacepage = "<a href=\"" . $short_link . "page," . "\\1" . "," . $row['alt_name'] . ".html\">\\2</a>";

} else {

$replacepage = "<a href=\"$PHP_SELF?newsid=" . $row['id'] . "&amp;news_page=\\1\">\\2</a>";
}

$row['full_story'] = preg_replace( "'\[PAGE=(.*?)\](.*?)\[/PAGE\]'si", $replacepage, $row['full_story'] );

} else {

$tpl->set( '{pages}', '' );
$row['full_story'] = preg_replace( "'\[PAGE=(.*?)\](.*?)\[/PAGE\]'si", "", $row['full_story'] );
}
}
4NT1P0V
На сайте с 31.01.2009
Offline
66
#1

Попробуйте это, думаю Вам поможет http://fordle.ru/modules/29-modul-navigacii.html

=)
G
На сайте с 24.07.2009
Offline
31
#2
4NT1P0V:
Попробуйте это, думаю Вам поможет http://fordle.ru/modules/29-modul-navigacii.html

Спасибо за ответ, такое не поможет. Этот модуль для навигации страниц на главной, в категориях, а в полной новости и статических страницах реализуется уже из самого движка файлом show.full.php, но спасибо и за него, поставил на пару сайтов, красиво вышло;)

gmyz добавил 22.11.2009 в 14:31

Вопрос решен. Если кому то полезен будет, вот код:

В 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);

За реализацию спасибо PROGRAMMATOR

RD
На сайте с 29.01.2010
Offline
48
#3

Вот тоже озадачен данной проблемой, только нужно сделать вывод навигации вот в таком виде :

помогите плз ...

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий