Меню

Постраничная навигация в списке разделов Битрикс- 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: заметки разработчика

Как получить свойства заказа в 1С-Битрикс: старые методы и современный API D7

Задача: Получить все доступные свойства заказа для всех активных типов плательщика из модуля магазина.

Звездочки в рейтинге Битрикс статей и товаров каталога

Задача: изменить вывод рейтинга элемента на звездочки, с помощью шаблона iblock.vote в товарах и новостях.

Установка счетчика Яндекс.Метрики на сайт с Content Security Policy (CSP)

Если на вашем сайте не отображаются данные о кликах и скроллинге в Яндекс.Метрике, вероятнее всего, это связано с настро...

Хостинг панель BrainyCp: оптимизация под 1С-битрикс

В этой видео-заметке расскажу как установить и оптимизировать панель управления сервером BrainyCp для использования в св...

Сортировать товары по названию, цене и свойствам в каталоге 1С-Битрикс

Задача: реализовать возможность сортировки товаров в разделах каталога. Сортировка должна работать с использованием AJAX...

Не дать купить товара больше, чем находится на определенных складах

Задача: в магазине 20 складов, на всех есть остатки но нужно ограничить покупку товара только остатками на двух складах,...

Добавление не существующего товара в корзину и заказ, 1С-Битрикс

Задача: нужно добавить в корзину товар, которого не существует в каталоге, с возможностью задать ему произвольные назван...

Выбор основного раздела для элемента инфоблока в 1С-Битрикс

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

Создание агента в 1С-Битрикс, на реальном примере

Задача: Каждый час нужно обновлять свойство элементов/товаров с типом строка "В наличии", вписывать в него либ...