Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

Сбивается постраничная навигация при использовании на странице нескольких компонентов

00 голосов
1
Возникла проблема: не работает постраничная навигация у всех компонентов, выводящих основной контент - новости, фотогалереи и прочие. Выражается это в появлении в постраничности ссылок вида ?PAGEN_2=10&PAGEN_1=2 и отображении не тех страниц.

После долгой отладки я нашёл, что второй PAGEN появляется из-за компонента фотогалереи, выводящего последние фотографии в правом столбце сайта.

Вопрос - что теперь делать? Является ли одновременное использование компонентов с постраничностью на одной странице сайта запрещённым ходом в Битриксе? Придётся ли избавляться от этого или можно как-то обойти?
спросил 15 Май, 13 от makdak (160 баллов)

1 Ответ

00 голосов
Пока что сделал обход при помощи костыля:
в шаблоне фотогалереи, что вызывает сбой, поставил
Код
global $NavNum;
$NavNum = 0;


так как я точно, знаю, что больше одной постраничности на одной странице сайта мне не нужно. Способ кривоват, но сайт теперь работает прямо и как нужно.

Если что, $NavNum - глобальная переменная, которая отвечает за цифирку в конце PAGEN_1, PAGEN_2, PAGEN_3 и т. д. Инкрементируется в методе CDBResult::InitNavStartVars(). Который вызывается или в CDBResult::NavStart(), или в CIBlockElement::GetList() с использованием постраничности.
ответил 15 Май, 13 от makdak (160 баллов)

Похожие вопросы

0 голосов
3 ответов
0 голосов
6 ответов
0 голосов
2 ответов