Блог Николая Семенцова

Партнер компании 1с-битрикс

CIBlockElement::GetList и торговые предложения

Для фильтрации элементов мы используем функцию CIBlockElement::GetList , но она не позволяет фильтровать по свойствам элементов торговых предложений в этом случае в помощь нам появились под запросы SubQuery . Расмотрим на примере у нас есть каталог и привязанные к нему торговые предложения инфоблок с id 72 в которых есть свойство размер PROPERTY_CML2_ATTRIBUTES , мы хотим отфильтровать все вещи где есть размер 38.
//Сформируем массив 
//внесем id  блока в котором будем искать
$arSubQuery = array("IBLOCK_ID" => 72);
// внесем свойство по которому будем фильтровать и его значение 
$arSubQuery['PROPERTY_CML2_ATTRIBUTES'] = array("38");
//делаем сам подзапрос
$arFilter['ID'] = CIBlockElement::SubQuery('свойство привязки предложения к товару', $arSubQuery); 
//дальше делаем запрос  в $arFilter  будут только те id где в привязанных предложениям есть размер 38
$res = CIBlockElement::GetList($arOrder , $arFilter, false , Array(), $arSelect);
Вот так можно делать фильтрацию по свойствам инфоблока торговых предложений .



Опубликовано: 23 сентября 2011




Помогла заметка? Жмите кнопки ниже


ВКонтакт Facebook Google Plus Одноклассники Twitter Livejournal Liveinternet Mail.Ru





comments powered by Disqus