Исключить из CIBlockElement::GetList товары с нулевой ценой
Подскажите, пожалуйста, как исключить из CIBlockElement::GetList товары с нулевой ценой? Есть запрос:
$res = CIBlockElement::GetList($array_sort, $arFilter, false, $navparams, $arSelect);
В нём я постранично вывожу по 8 товаров. Если делать костылём, то получится, что на одной странице выведется 6 товаров, на другой 5, на третьей ещё сколько то. Я понимаю, что надо в фильтре указать, чтобы он не пропускал товары, у которых цена равна null. Мой фильтр:
$arFilter = array("ACTIVE" => "Y", ["!CATALOG_PRICE_8"] => "null");
Из документации я подчеркнул, что есть различные проверки фильтра. И какой бы вариант я не попробовал:
["!CATALOG_PRICE_8"] => "null"
["!CATALOG_PRICE_8"] => null
["!CATALOG_PRICE_8"] = null
["!"."CATALOG_PRICE_8"] = null
["!"."CATALOG_PRICE_8"] => null
"CATALOG_PRICE_8" != null
"CATALOG_PRICE_8" > 0
либо выкидывает ошибку, либо не работает и всё равно пропускает
"arResult": [
{
"CATALOG_PRICE_8": null,
}
],
Ответы (1 шт):
Автор решения: SLideR11
→ Ссылка
Решил проблему. Правильно было вот так:
$arFilter = array("ACTIVE" => "Y", "!=CATALOG_PRICE_8" => false);
Так же такая формулировка тоже работает
$arFilter = array("ACTIVE" => "Y", ">CATALOG_PRICE_8" => 0);