Bitrix Getlist

Помимо готовых шаблонов и сниппетов для «1С-Битрикс» его создатели предоставляют широчайший простор для самостоятельного программирования. Это позволяет расширять функционал сайтов, оперативно вносить в существующий код необходимые изменения и решать узкоспециализированные задачи.

При самостоятельном программировании нередко возникает ситуация, когда нужно получить список элементов, находящихся в конкретном информационном блоке. Также может понадобится вывод списка относящихся к этому блоку разделов.

Приложение

Для этого используется метод GetList который, помимо прочего, используется со следующими классами:

  • CIBlockElement;
  • CIBlockSection.

Обратите внимание! С их помощью можно получить и вывести требуемую информацию.

GetList — что это за метод

В Bitrix GetList является методом, используемым в классе информационного блока. Его применяют для обращения к базе данных с целью получить различную информацию о блоке. Информация может содержать сведенья об элементах, разделах и других параметрах информационного блока.

В «Битрикс» GetList используется очень широко и его можно встретить в различных классах и модулях при разработке. Более подробная информация о всех возможностях использования данного метода изложена в технической документации для разработчиков на официальном сайте платформы.

Метод GetList, используемый в коде

Bitrix Ciblocksection Getlist

Этот класс предназначен для различных операций с группами или разделами информационного блока. С его помощью можно получить список разделов информационного блока. После получения списка благодаря Bitrix Section Getlist его можно отсортировать, используя Bitrix Getlist Filter.

Класс Ciblocksection Getlist

Bitrix Ciblockelement Getlist

Класс «Битрикс» Ciblockelement Getlist предназначен для различных операций с одиночными элементами, входящими в информационный блок. С его помощью также можно получить список элементов и их количество для дальнейшей обработки в коде.

В качестве примера вывод названий элементов, входящих в условный информационный блок — «Новости». Первое, что необходимо узнать перед началом программирования — это ID интересующего информационного блока. Наиболее простой способ сделать это — обратиться к URL в адресной строке. Цифра, необходимая для использования в коде, в адресной строке идет сразу после — «IBLOCK_ID=», условно она будет равняться 1.

Чтобы получить и вывести названия элементов, входящих в информационный блок, нужно изменить интересующую страницу в режиме PHP-кодировки. На странице для Getlist Element Bitrix прописывается следующий код:

if(CModule::IncludeModule(“iblock”)){$res=CIBlockElement::GetList(Array(),Array(“IBLOCK_ID”=>1));while($ob=$res>GetNext()){?><pre><?print_r($ob[“NAME«]);?></pre><?}}.

Обратите внимание! В приведенном коде указан лишь один параметр, равный единице и относящийся к «IBLOCK_ID». Если убрать параметр [«NAME»], оставив только $ob, то while выведет намного больше значений исследуемого элемента.

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

Поскольку информационные блоки в «Битрикс» являются наиболее используемыми модулями, то необходимость вывода значения через Bitrix Iblock становится довольно распространенной задачей. Понадобиться это может в различных ситуациях: от реализации слайдера, до создания различных справочников.

Вывод значений информационного блока стандартным функционалом

Стандартный функционал, предоставленный в консоли управления, порой не может справиться с поставленной задачей. Это может быть связано с необходимостью вывода нестандартных свойств информационного блока. В таком случае приходит на помощь самостоятельное программирование и «Битрикс» Element Getlist.

Если на сайте создан информационный блок, в котором предусмотрено нестандартное свойство с заданным идентификатором, то его значение выводится при помощи дополнительного кода. В качестве примера подробное описание новости. Для вывода значения необходимого свойства Bitrix Get Element, код которого равен FEATURE, в шаблоне новости прописывается следующий код:

<?=$arResult[“DISPLAY_PROPERTIES”][“FEATURE”][“VALUE”];?>

Для вывода имени требуемого свойства код пишется следующий:

<?=$arResult[“DISPLAY_PROPERTIES”][“FEATURE”][“NAME”];?>

Чтобы выполнить проверку и избежать вывода лишнего кода при незаданном значении элемента, вводится следующая конструкция:

<?if($arResult[“DISPLAY_PROPERTIES”][“FEATURE”]):?><?=$arResult[“DISPLAY_PROPERTIES”][“FEATURE”][“NAME”];?><?=$arResult[“DISPLAY_PROPERTIES”][“FEATURE”][“VALUE«];?><?endif;?>

Бывает, что у информационного блока задается множество различных свойств. Если стоит задача выводить значения этих свойств в различных местах, то стандартные методы «Битрикс» не помогут. По умолчанию эта информация выводится последовательно в цикле, в результате страдает дизайн сайта. Для решения этой проблемы используется аналогия кода, приведенного выше:

<!—первое свойство—><?if($arResult[“DISPLAY_PROPERTIES”][“FEATURE”]):?><divclass=”wrapper-top”><divclass=”wrapper-top-name”><?=$arResult[“DISPLAY_PROPERTIES”][“FEATURE”][“NAME”];?></div><divclass=”wrapper-top-count value”><?=$arResult[“DISPLAY_PROPERTIES”][“FEATURE”][“VALUE”];?></div></div><?endif;?>

<!—второе свойство—><?if($arResult[“DISPLAY_PROPERTIES”][“FEATURE”]):?><divclass=”wrapper-bottom”><divclass=”wrapper-bottom-name”><?=$arResult[“DISPLAY_PROPERTIES”][“FEATURE”][“NAME”];?></div><divclass=”wrapper-bottom-value”><?=$arResult[“DISPLAY_PROPERTIES”][“FEATURE”][“VALUE«];?></div></div><?endif;?>

Важно! В результате информация о первом свойстве будет выведена в разметке выше, а о втором свойстве ниже. Для этого не стоит забывать включать использование необходимых свойств.

Получение списка разделов

Довольно часто на сайте возникает задача получения и вывода списка разделов. В качестве примера можно использовать стандартный компонент «Битрикс» «news.list».

Создание раздела для информационного блока

Чтобы решить поставленную задачу, нужно использовать следующий код:

<?$infoblock=ХХХ;//Инфоблок с ID ХХХ (необходимо установить ID интересующего инфоблока)$rs_Section=CIBlockSection:etList(array(’left_margin’=>’asc’),array(’IBLOCK_ID’=>$infoblock));while($ar_Section=$rs_Section>Fetch()){$ar_Resu[]=array(//идет сбор массива необходимой информации ’ID’=>$ar_Section[’ID’],//id раздела ’NAME’=>$ar_Section[’NAME’],//имя раздела (что, собственно, интересует)’IBLOCK_SECTION_ID’=>$ar_Section[’IBLOCK_SECTION_ID’],’LEFT_MARGIN’=>$ar_Section[’LEFT_MARGIN’],’RIGHT_MARGIN’=>$ar_Section[’RIGHT_MARGIN’],’DEPTH_LEVEL’=>$ar_Section[’DEPTH_LEVEL’],);print_r($ar_Resu);//проверка того, что собрано в массив }foreach($ar_Resuas$section){echo$section[“NAME”].«”;//вывод полученной информации}?>

Конечно, для реализации в программном коде описанных методов нужны определенные знания в программировании. Однако при наличии таковых или при обращении к соответствующему специалисту «Битрикс» открывает поистине неограниченные возможности в создании сайтов.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

You May Also Like
Подробнее

Битрикс 24 — личный кабинет

Битрикс24 — удобная онлайн-площадка для управления бизнесом. С ее помощью намного легче выстроить в коллективе эффективную работу, наладить деловое общение между сотрудниками,…
Подробнее

Разработка сайтов на Битрикс

«1С-Битрикс: Управление сайтом» — платформа, позволяющая профессионально конструировать веб-проекты любой формы: информационные ресурсы, бизнес-проекты, обучающие тренинги, интернет-магазины. Всё это…
Подробнее

Использование Bitrix24 Desktop

Битрикс24 уже давно завоевал популярность среди множества компаний. Для этого есть несколько основных причин. Первая из них — предоставление широкого…
Подробнее

Хостинг для 1С Битрикс

Мало какая компания, предоставляющая свои услуги для широкого или узкого круга потребителей, может сегодня обойтись без собственного сайта.…