Mirkom63
@Mirkom63
Я программист

Не могу отфильтровать по содержимому в битриксе?

Пытаюсь вот так отфильтровать разделы:

<ul>
<?
$arSelect=array('UF_TITLE','UF_KEYWORDS','UF_DESCRIPTION','UF_AFTER_TEXT','UF_ALT');
$arFilter=array( 
    'IBLOCK_ID' => 1,
    array( 
        "LOGIC" => "OR", 
        'NAME'=>'%'.$_REQUEST['q'].'%', 
        'DESCRIPTION'=>'%'.$_REQUEST['q'].'%', 
    ),     
);
$rsSect = CIBlockSection::GetList(array('left_margin' => 'asc'),$arFilter,false,$arSelect);
while ($arSect = $rsSect->GetNext())
{ 
   ?>
   <li><a href="<?=$arSect['SECTION_PAGE_URL']?>"><?=$arSect['NAME']?></a></li><? 
} 

?>
</ul>


$_REQUEST['q'] - содержит слово, которое надо найти.
по NAME ищет нормально, а по DESCRIPTION нет....может потому что там html ?
Как найти слово в DESCRIPTION?
  • Вопрос задан
  • 231 просмотр
Пригласить эксперта
Ответы на вопрос 2
$arFilter=array( 
    'IBLOCK_ID' => 1,
    array( 
        "LOGIC" => "OR", 
        array('NAME'=>'%'.$_REQUEST['q'].'%'), 
        array('UF_DESCRIPTION'=>'%'.$_REQUEST['q'].'%'), 
    ),     
);

Попробуйте вот так
Ответ написан
babarun
@babarun Куратор тега 1С-Битрикс
Безумный план моих идей в руках больных людей
Судя по коду метода CIBlockSection::GetFilter, фильтровать по полю DESCRIPTION нельзя.

Нужно искать обходные пути или поправить метод.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы