Рейтинг: 18.3561  
На голосовании
Предложил Пользователь 114664 17.02.2016 11:03:16

nPageWindow - Добавить параметр в стандартные компоненты news.list и пр.

Здравствуйте.

Довольно часто приходится менять кол-во столбцов в пагинации у компонетов news.list, catalog.section и пр., где используется компонет system.pagenavigation.

К сожалению сейчас, нет другого способа, кроме как кастомизировать компонент и вставлять строку:
$rsElement->nPageWindow = $arParams['nPageWindow'];
перед вызовом $rsElement->GetPageNavStringEx().

Например, для компонента news.list нужно сделать так, примерно на 366 строке:

$rsElement->nPageWindow = $arParams['nPageWindow'];

      $arResult["NAV_STRING"] = $rsElement->GetPageNavStringEx(
         $navComponentObject,
         $arParams["PAGER_TITLE"],
         $arParams["PAGER_TEMPLATE"],
         $arParams["PAGER_SHOW_ALWAYS"],
         $this,
         $navComponentParameters
      );
 
В итоге получим это: http://prntscr.com/a4c2aw
То есть, по середине 3 столбика, а не 5, как выводится по умолчанию.

Пожалуйста, голосуйте и оставляйте комментарии, чтобы битрикс добавил нужный параметр в настройки компонента и одну строку в код самого компонента.:!:
Рейтинг: 9.8388  
На голосовании
Предложил Пользователь 61272 04.07.2012 15:17:26

Расширенная пагинация в компонентах

По умолчанию в постраничной навигации отображается 11 страниц, чтобы сделать пагинацию по другому количеству, необходимо создавать свой шаблон и добавлять там функции для перерасчета пагинатора. Предлагаю для компонентов со списками  (catalog.section, news.list и тп) добавить параметр - количество страниц выводимое в пагинаторе.