Diversia
@Diversia

Как в Битрикс HighloadBlock сделать обратную постраничную навигацию?

Есть пример на инфоблоках, как сделать постраничную навигацию. Подскажите пожалуйста, как подогнать этот код только под HighloadBlock ?
<?
$filter = array("=IBLOCK_ID"=>6);

$cnt = \Bitrix\Iblock\ElementTable::getCount($filter);

$nav = new \Bitrix\Main\UI\ReversePageNavigation("nav-news", $cnt);
$nav->allowAllRecords(true)
   ->setPageSize(5)
   ->initFromUri();

$newsList = \Bitrix\Iblock\ElementTable::getList(
   array(
      "filter" => $filter,
      "offset" => $nav->getOffset(),
      "limit" => $nav->getLimit(),
   )
);

while($news = $newsList->fetch())
{
}
?>

<?
$APPLICATION->IncludeComponent(
   "bitrix:main.pagenavigation",
   "",
   array(
      "NAV_OBJECT" => $nav,
      "SEF_MODE" => "Y",
   ),
   false
);
?>
  • Вопрос задан
  • 403 просмотра
Пригласить эксперта
Ответы на вопрос 1
s_panteleev
@s_panteleev
25 yo, Yaroslavl
<?php

\Bitrix\Main\Loader::includeModule('highloadblock');

$hlBlockId = 1;
$hlObject = \Bitrix\Highloadblock\HighloadBlockTable::getById($hlBlockId)->fetch();

$entity = \Bitrix\Highloadblock\HighloadBlockTable::compileEntity($hlObject);
$entity_data_class = $entity->getDataClass();

$newsList = $entity_data_class::getList([
      'filter' => $filter,
      'offset' => $nav->getOffset(),
      'limit' => $nav->getLimit(),
]);
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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