Количество страниц в пагинации 1С-Битрикс

Количество страниц в пагинации 1С-Битрикс

Количество страниц в пагинации 1С-Битрикс

По-умолчанию в пагинации у битрикса стоит 5 страниц. Но что, если нам нужно изменить это количество в ту или иную сторону? Тогда мы должны кастомизировать вывод постраничной навигации.

Для этого копируем шаблон пагинации, который лежит тут /bitrix/components/bitrix/system.pagenavigation/template/.default, как любой другой компонент - в папку шаблона вашего сайта.

После этого нам нужно дописать код в начале файла template.php скопированного шаблона.

/***CustomPageNav start***/
$nPageWindow = 15; //количество отображаемых страниц 
if ($arResult["NavPageNomer"] > floor($nPageWindow/2) + 1 && $arResult["NavPageCount"] > $nPageWindow)
	$nStartPage = $arResult["NavPageNomer"] - floor($nPageWindow/2);
else
	$nStartPage = 1;

if ($arResult["NavPageNomer"] <= $arResult["NavPageCount"] - floor($nPageWindow/2) && $nStartPage + $nPageWindow-1 <= $arResult["NavPageCount"])
	$nEndPage = $nStartPage + $nPageWindow - 1;
else
{
	$nEndPage = $arResult["NavPageCount"];
	if($nEndPage - $nPageWindow + 1 >= 1)
		$nStartPage = $nEndPage - $nPageWindow + 1;
}
$arResult["nStartPage"] = $arResult["nStartPage"] = $nStartPage;
$arResult["nEndPage"] = $arResult["nEndPage"] = $nEndPage;
/***CustomPageNav end***/

После этого просто изменяем значение переменной $nPageWindow так, как нам нужно. У нас должно получиться что-то вроде этого:


  • нифига не работает