Skip to content

Bx module for social network and system groups managment

Notifications You must be signed in to change notification settings

pavelshulaev/params

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Модуль для Битрикс «Списки параметров»

Модуль предоставляет api для получения данных в виде двумерных массивов из многих моделей битрикс. Модуль можно использовать для получения списков параметров в файлах .parameters.php компонентов, а так же для других целей.

Модуль доступен на Маркетплейсе Битрикса.

Возможности

На данный момент доступны списки параметров из:

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

Практически каждый метод (с полным переходм Битрикса на d7 - каждый) последним параметром принимает массив $params. Этот массив может содеражать слежующие поля, влияющие на поведение метода:

  • empty - подпись для первого, "пустого" элемента списка. Если задана и равняется null (['empty' => null]), то пустой элемент не создается;
  • template - массив, содержащий шаблон элементов возвращаемого списка. Заменяемые поля должны быть заключены в фигурные скобки. Например ['template' => ['{ID}' => '[{ID}] {NAME}']] означает, что ключем списке будет ID сущности, а значением - ID в квадратных скобках, а, затем, имя;
  • filter - переопределение ключа filter запроса orm getList, задаёт правила выборки;
  • add_filter - задаёт дополнительные условия выборки запроса orm getList. Присоденияется к полям, переданным в ключе filter, не переопределяя их;
  • order - переопределение ключа order запроса orm getList, задаёт сортировку списка;
  • select - переопределение ключа select запроса orm getList, указывает, какие поля следует выбрать при запросе. Если не передано, то формируется из полей, переданных в ключе template;
  • reload - флаг прямого обращения к базе, минуя кеш. Если не передан, то значение только первый раз берется из базы, а затем - из кеша.

Пример

Получить свойства инфоблока в формате [CODE => [CODE] NAME] без пустого значения.

use Rover\Params\Iblock;
use Bitrix\Main\Loader;

if (Loader::includeModule('rover.params')){

    $iblockId = 1; // for example
    $params = [
        'template'  => ['{CODE}' => '[{CODE}] {NAME}'],
        'empty'     => null,
    ];

    $props = Iblock::getProps($iblockId, $params);

    echo '<pre>';
    print_r($props);
    echo '</pre>'; 

} else {
    ShowError('module "rover.params" not found');
}

Контакты

Модуль активно развивается. Свои вопросы и плжелания вы можете отправлять на электропочту [email protected], либо через форму на сайте https://rover-it.me.

Пожертвования

Если решение оказалось вам полезным, вы можете оставить пожертование

Donate

About

Bx module for social network and system groups managment

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages