Как узнать выводится ли свойства в smart filter

69
Алексей,

Свойства хранятся в одной таблице, а их параметр "Выводить в умном фильтре" в другой. Написал пример запроса свойств, которые выводятся в умный фильтр.

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

$iblockId = 1;

// собираем подзапрос в таблицу свойств раздела
$subQuery = \Bitrix\Iblock\SectionPropertyTable::query() 
	->setSelect(['PROPERTY_ID'])
	->where('IBLOCK_ID', $iblockId)
	->where('SMART_FILTER', 'Y'); 

// получаем свойства выводимые в умный фильтр
$dbIblockProps = \Bitrix\Iblock\PropertyTable::query() 
	->where('IBLOCK_ID', $iblockId)
	->whereIn('ID', $subQuery)
	->setSelect(["ID", "NAME"])
	->exec();

while ($arIblockProp = $dbIblockProps->fetch()){
	var_dump($arIblockProp);
}
Опубликовано 5 мая 2021 | Обновлено 6 мая 2021
bitrix orm, готовый код, разработчику
Поделиться
Комментарии
Зарегистрируйтесь чтобы получать уведомления об ответе
Свойства хранятся в одной таблице, а их параметр "Выводить в умном фильтре" в другой. Написал пример запроса свойств, которые выводятся в умный фильтр.