чиним пагинацию

This commit is contained in:
2025-12-31 12:04:01 +05:00
parent 4c3e68dfd8
commit 020da451b2

View File

@@ -276,15 +276,25 @@ function commentListShow($tpl_dir)
LIMIT " . (int)$start . "," . (int)$limit . "
");
if ($num > $limit)
if ($num > $limit)
{
$page_nav = '<a class="page_nav" href="index.php?id=' . $AVE_Core->curentdoc->Id
// 1. Формируем базовый шаблон ссылки
$page_nav = '<a class="page_nav" href="index.php?id=' . $AVE_Core->curentdoc->Id
. '&amp;doc=' . (empty($AVE_Core->curentdoc->document_alias) ? prepare_url($AVE_Core->curentdoc->document_title) : $AVE_Core->curentdoc->document_alias)
. ((isset($artpage) && is_numeric($artpage)) ? '&amp;artpage=' . $artpage : '')
. ((isset($apage) && is_numeric($apage)) ? '&amp;apage=' . $apage : '')
. '&amp;page={s}">{t}</a> ';
$page_nav = get_pagination(ceil($num / $limit), 'page', $page_nav, get_settings('navi_box'));
$page_nav = preg_replace('/(?<!:)\/\//', '/', $page_nav);
// 2. Генерируем стандартную пагинацию системы
$page_nav = get_pagination(ceil($num / $limit), 'page', $page_nav, get_settings('navi_box'));
// 3. ПРИМЕНЯЕМ КОСТЫЛИ ДЛЯ ЧПУ
// Прогоняем через rewrite_link и чистим двойные/тройные слеши
$page_nav = str_ireplace('"//"', '"/"', str_ireplace('///', '/', rewrite_link($page_nav)));
$page_nav = preg_replace('/(?<!:)\/\//', '/', $page_nav);
// 4. Регистрируем пагинацию в глобальном массиве системы (без этого на главной может не работать)
$GLOBALS['page_id'][$document_id]['page'] = ($GLOBALS['page_id'][$document_id]['page'] > ceil($num / $limit) ? $GLOBALS['page_id'][$document_id]['page'] : ceil($num / $limit));
}
else
{