Декабрь 6, 2017
Выборка свойств инфоблока средствами класса "\Bitrix\Iblock\PropertyTable".
Выборка всех активных свойств инфоблока с идентификатором в переменной $IBLOCK_ID:
Выборка активных свойств типа "Список" инфоблока с идентификатором в переменной $IBLOCK_ID (только ID и символьный код):
$rsProperty = \Bitrix\Iblock\PropertyTable::getList(array(
'filter' => array(
'IBLOCK_ID'=>$IBLOCK_ID,
'ACTIVE'=>'Y',
'=PROPERTY_TYPE'=>\Bitrix\Iblock\PropertyTable::TYPE_LIST
),
'select' => array(
'ID',
'CODE',
),
));
// PROPERTY_TYPE:
// \Bitrix\Iblock\PropertyTable::TYPE_STRING - строка
// \Bitrix\Iblock\PropertyTable::TYPE_NUMBER - число
// \Bitrix\Iblock\PropertyTable::TYPE_LIST - список
// \Bitrix\Iblock\PropertyTable::TYPE_ELEMENT - привязка к элементу
// \Bitrix\Iblock\PropertyTable::TYPE_SECTION - привязка к разделу
// \Bitrix\Iblock\PropertyTable::TYPE_FILE - файл
while($arProperty=$rsProperty->fetch())
{
print_r($arProperty);
}
Выборка свойств типа "Универсальная привязка" инфоблока с идентификатором в переменной $IBLOCK_ID (фильтр по пользовательскому типу):
$rsProperty = \Bitrix\Iblock\PropertyTable::getList(array(
'filter' => array('IBLOCK_ID'=>$IBLOCK_ID,'ACTIVE'=>'Y','=USER_TYPE'=>'grain_link'),
));
// примеры USER_TYPE:
// grain_link - универсальная привязка
// gtable - свойство-таблица
// HTML - текст/html
// video - видео
// Date - дата
// DateTime - дата/время
// Money - деньги
// SKU - привязка к предложениям в магазине
// FileMan - привязка к файлу на сервере
while($arProperty=$rsProperty->fetch())
{
print_r($arProperty);
}
Пример возвращаемых данных:
Array
(
[ID] => 131
[TIMESTAMP_X] => Bitrix\Main\Type\DateTime Object
(
[value:protected] => DateTime Object
(
[date] => 2017-12-01 16:00:42
[timezone_type] => 3
[timezone] => Europe/Moscow
)
)
[IBLOCK_ID] => 14
[NAME] => SKU
[ACTIVE] => Y
[SORT] => 500
[CODE] => Привязка к предложениям
[DEFAULT_VALUE] =>
[PROPERTY_TYPE] => E
[ROW_COUNT] => 1
[COL_COUNT] => 30
[LIST_TYPE] => L
[MULTIPLE] => N
[XML_ID] =>
[FILE_TYPE] =>
[MULTIPLE_CNT] => 5
[TMP_ID] =>
[LINK_IBLOCK_ID] => 0
[WITH_DESCRIPTION] => N
[SEARCHABLE] => N
[FILTRABLE] => N
[IS_REQUIRED] => N
[VERSION] => 1
[USER_TYPE] => SKU
[USER_TYPE_SETTINGS] => a:9:{s:4:"VIEW";s:1:"A";s:8:"SHOW_ADD";s:1:"N";s:9:"MAX_WIDTH";i:0;s:10:"MIN_HEIGHT";i:24;s:10:"MAX_HEIGHT";i:1000;s:7:"BAN_SYM";s:2:",;";s:7:"REP_SYM";s:1:" ";s:13:"OTHER_REP_SYM";s:0:"";s:11:"IBLOCK_MESS";s:1:"N";}
[HINT] =>
)
Array
(
[ID] => 132
[TIMESTAMP_X] => Bitrix\Main\Type\DateTime Object
(
[value:protected] => DateTime Object
(
[date] => 2017-12-01 16:00:42
[timezone_type] => 3
[timezone] => Europe/Moscow
)
)
[IBLOCK_ID] => 14
[NAME] => Путь к файлу
[ACTIVE] => Y
[SORT] => 500
[CODE] => rtehth
[DEFAULT_VALUE] =>
[PROPERTY_TYPE] => S
[ROW_COUNT] => 1
[COL_COUNT] => 30
[LIST_TYPE] => L
[MULTIPLE] => N
[XML_ID] =>
[FILE_TYPE] =>
[MULTIPLE_CNT] => 5
[TMP_ID] =>
[LINK_IBLOCK_ID] => 0
[WITH_DESCRIPTION] => N
[SEARCHABLE] => N
[FILTRABLE] => N
[IS_REQUIRED] => N
[VERSION] => 1
[USER_TYPE] => FileMan
[USER_TYPE_SETTINGS] =>
[HINT] =>
)