Реализация лежит на поверхности. А именно в админке есть вывод новостей с разбивкой по страницам.
По сути нужно внести правки в несколько файлов, а именно:
core\functions\news_function.php
core\includes\news.php
core\tpl\user\НАЗВАНИЕ_ВАШЕГО_ШАБЛОНА\show_news.tpl.html
.htaccess
В файле core/includes/news.php находим такие строки -
$pre_news_array = newsGetPreNewsToCustomer(); $smarty->assign( "pre_news_array", $pre_news_array );
И удаляем. Потому как тут идет выборка новостей не зависимо от того на какой странице вы находитесь.
Находим ниже строку
if ( isset($_GET["news"]) ) $smarty->assign( "main_content_template", "show_news.tpl.html" );
и меняем на
<!--pd_0-->
Кстати тут я использовал конcтанту из админки - CONF_NEWS_COUNT_IN_NEWS_PAGE, которая устанавливает сколько новостей выводить на одной странице. По сути эта константа будет дробить на нужное количество новостей для одной страницы.
В файле core/functions/news_function.php Добавляем функцию:
<!--pd_1-->
Нужно еще добавить пару строк в файл .htaccess по аналогии с правилами ЧПУ для категорий:
RewriteRule ^news_offset_([0-9]+)\.html$ index.php?news=yes&offset=$1 [L] RewriteRule ^news_show_all\.html$ index.php?news=yes&show_all=yes [L]
Также я добавил в шаблон show_news.tpl.html переменную смарти выводящую навигацию по страницам - {$navigator_news} .
Сохраняем всё, заливаем на свой сайт и проверяем. Всё должно работать должным образом.
Кому пригодился мой пост - не стесняйтесь, поднимайте репутацию. Не сочтите за нескромность, но я не вижу пока другого способа заработать репутацию на данном форуме.
PS:. Cпрятал часть кода с условием наличия одного поста. Не обессутьте. Но увы, просмотров куча а репутацию так никто и не поднял. Неужели никому не пригодился мой код?