Меню

Постраничная навигация в списке разделов Битрикс- catalog.section.list

RSS
Постраничная навигация в списке разделов Битрикс- catalog.section.list
 
Постраничная навигация в списке разделов Битрикс- catalog.section.list

Если в магазине очень много разделов и хочется вывести их с постраничной навигацией: можно воспользоваться методами CDBResult::IsNavPrint(), CDBResult::NavStart и CDBResult::NavPrint
 
Михаил,большое спасибо за метод! Все работает! Небольшие два вопроса:
1.Как использовать стандартную пагинацию скажем "round" шаблон?
2.Как разметить ее над списком, а если возможно и под ним тоже ?
 
Михаил, если переключиться на вторую страницу, а затем в URL убрать ?PAGEN_1=2 и перезагрузить страницу, то отображаются разделы второй страницы. Можно это как-то пофиксить (чтобы сбрасывалось обратно на первую страницу)?
 
Цитата
Гость написал:
Михаил, если переключиться на вторую страницу, а затем в URL убрать ?PAGEN_1=2 и перезагрузить страницу, то отображаются разделы второй страницы. Можно это как-то пофиксить (чтобы сбрасывалось обратно на первую страницу)?

Спасибо за донат. Но проблему не смог воспроизвести, в заметке чуть чуть поправил код - убрал лишнее.
Видео: https://www.youtube.com/watch?v=acQHmc75Yb4
Изменено: Михаил Базаров - 08.04.2023 11:31:42
 
Это, наверное, потому что я использовал метод GetPageNavStringEx (чтобы можно было подключить свой шаблон вывода постраничной навигации), у меня ajax запросом PAGEN_1=* подгружаются страницы и после перезагрузки страницы остаётся именно та страница, которая была подгружена последняя. Может есть какое-то решение использовать свой шаблон навигации?
 
Проблема решена. Нужно было указать нулевое время кеширования страниц обратной навигации в методе (у меня было null вместо 0).

Может кому-то пригодится:

<?=$rs->GetPageNavStringEx($navComponentObject, '', '.default', false, 0);?>
 
Не могу подключить шабон bootstrap что можно сделать?
Указал
$rs->NavPrint("Подразделы", false, "", '/bitrix/templates/government_default/components/bitrix/syste­m.pagenavigation/bootstrap_new/template.php');

Ругается на  $this->setFrameMode(true);
 
Целиком ошибку напишите. Вообще это  $this->setFrameMode(true); отвечает за композитный режим
 
Тут скрин


Если закоментить $this->setFrameMode(true);то ошибки нет, и пагинации тоже)
 
Цитата
написал:
Целиком ошибку напишите. Вообще это  $this->setFrameMode(true); отвечает за композитный режим

Код
[Error] 
Call to undefined method CDBResult::setFrameMode() (0)
C:\OpenServer\domains\local.tourism.loc\bitrix\templates\government_default\components\bitrix\system.pagenavigation\bootstrap_new\template.php:17
#0: include
   C:\OpenServer\domains\local.tourism.loc\bitrix\modules\main\classes\general\database.php:799
#1: CAllDBResult->GetNavPrint
   C:\OpenServer\domains\local.tourism.loc\bitrix\modules\main\classes\general\database.php:697
#2: CAllDBResult->NavPrint
   C:\OpenServer\domains\local.tourism.loc\bitrix\templates\government_default\components\bitrix\catalog.section.list\cards_galery\template.php:26
#3: include(string)
   C:\OpenServer\domains\local.tourism.loc\bitrix\modules\main\classes\general\component_template.php:790
#4: CBitrixComponentTemplate->__IncludePHPTemplate
   C:\OpenServer\domains\local.tourism.loc\bitrix\modules\main\classes\general\component_template.php:885
#5: CBitrixComponentTemplate->IncludeTemplate
   C:\OpenServer\domains\local.tourism.loc\bitrix\modules\main\classes\general\component.php:776
#6: CBitrixComponent->showComponentTemplate
   C:\OpenServer\domains\local.tourism.loc\bitrix\modules\main\classes\general\component.php:716
#7: CBitrixComponent->includeComponentTemplate
   C:\OpenServer\domains\local.tourism.loc\bitrix\components\bitrix\catalog.section.list\component.php:538
#8: include(string)
   C:\OpenServer\domains\local.tourism.loc\bitrix\modules\main\classes\general\component.php:607
#9: CBitrixComponent->__includeComponent
   C:\OpenServer\domains\local.tourism.loc\bitrix\modules\main\classes\general\component.php:684
#10: CBitrixComponent->includeComponent
   C:\OpenServer\domains\local.tourism.loc\bitrix\modules\main\classes\general\main.php:1072
#11: CAllMain->IncludeComponent
   C:\OpenServer\domains\local.tourism.loc\bitrix\templates\government_default\components\bitrix\news\galery_new\news.php:78
#12: include(string)
   C:\OpenServer\domains\local.tourism.loc\bitrix\modules\main\classes\general\component_template.php:790
#13: CBitrixComponentTemplate->__IncludePHPTemplate
   C:\OpenServer\domains\local.tourism.loc\bitrix\modules\main\classes\general\component_template.php:885
#14: CBitrixComponentTemplate->IncludeTemplate
   C:\OpenServer\domains\local.tourism.loc\bitrix\modules\main\classes\general\component.php:776
#15: CBitrixComponent->showComponentTemplate
   C:\OpenServer\domains\local.tourism.loc\bitrix\modules\main\classes\general\component.php:716
#16: CBitrixComponent->includeComponentTemplate
   C:\OpenServer\domains\local.tourism.loc\bitrix\components\bitrix\news\component.php:336
#17: include(string)
   C:\OpenServer\domains\local.tourism.loc\bitrix\modules\main\classes\general\component.php:607
#18: CBitrixComponent->__includeComponent
   C:\OpenServer\domains\local.tourism.loc\bitrix\modules\main\classes\general\component.php:684
#19: CBitrixComponent->includeComponent
   C:\OpenServer\domains\local.tourism.loc\bitrix\modules\main\classes\general\main.php:1072
#20: CAllMain->IncludeComponent
   C:\OpenServer\domains\local.tourism.loc\fotoreportazhi\index.php:104
Изменено: Михаил Базаров - 05.07.2023 13:09:06
Читают тему
Форма ответов
 
Текст сообщения*
Перетащите файлы
Ничего не найдено
Файл
Загрузить файлы
 

Блог-note: заметки разработчика

XML в формате Commerce ML-2, города России и Мира, для выгрузки в инфоблок Битрикс

Подвернулась задачка, создать инфоблок для Битрикс, в котором будут просто города России и мира в виде элементов инфобло...

Обновление цен и остатков из текстового файла, в каталоге 1C-Битрикс.

Задача: прочитать txt-файл с ценами и остатками, который выгружает программа учета по FTP, и обновить эти данные в катал...

Вывести список всех пользователей с необходимой информацией

Если нужно, на какой-либо странице сайта, вывести всех пользователей из группы "Зарегистирированные пользователи", прост...

Дать пользователю возможность быстро отредактировать материал

На одном из разрабатываемых сайтов, пользователи формируют его контент. После регистрации, становится доступен персональ...

Получить все поля раздела, включая пользовательские, в section.php

Если нужно получить какие-то данные о текущем разделе, которых нет в изначальном массиве, можно воспользоваться методом ...

Вывести производителей на сайте с отбором его товаров из каталога

Достаточно частая задачка для каталога или интернет-магазина: вывести список производителей с подробными описаниями, а т...

Фиксированная корзина с обновлением, без перезагрузки страницы.

Иногда нужно сделать так, чтобы корзина в интернет магазине, созданном на Битрикс, была постоянно на виду, при этом обно...

Если предложение SKU в корзине, поменять кнопку добавления на "В корзине"

Данная заметка является дополнением к ранее опубликованной: Если товар в корзине, поменять значение input на "В корзине"...

Ускорение работы сайта на 1С-Битрикс

Данная статья написана специально под видеоролик (приложен в конце статьи), опубликованный на моем ВКVideo канал...