Добрый день!
Задача:
вывести результаты поиска, с условием что страницы находятся в определенном разделе (папке)
то есть искать по документам из определённой папки
Использую класс CSearch или компонент search.page
Все документы проиндексированы нормально
хочу сделать вывод поиска но только из определенного раздела (папки)
При вызове CSearch использую фильтр как описано тутhttp://dev.1c-bitrix.ru/api_help/search/classes/csearch/search.php
Фильтрую по полю ITEM_ID
Оно обычно имеет вид "s1|url" , где url адрес страницы
Если использовать точное совпадение то поиск фильтруется, например:
Но другие модификаторы НЕ работают (которые описаны тут http://dev.1c-bitrix.ru/api_help/search/classes/csearch/search.php )
Возникает вопрос: "что я делаю не так?" Или как решить задачу другим способом?
Задача:
вывести результаты поиска, с условием что страницы находятся в определенном разделе (папке)
то есть искать по документам из определённой папки
Использую класс CSearch или компонент search.page
Все документы проиндексированы нормально
хочу сделать вывод поиска но только из определенного раздела (папки)
При вызове CSearch использую фильтр как описано тут
Фильтрую по полю ITEM_ID
Оно обычно имеет вид "s1|url" , где url адрес страницы
Если использовать точное совпадение то поиск фильтруется, например:
Код |
---|
$obSearch->Search( array( "QUERY" => $q, "SITE_ID" => SITE_ID, "=ITEM_ID" => 's1|/folder/index.php', ) ); |
Модификатор | Пример | Описание |
= | "=MODULE_ID" => "iblock" | Выборка точного соответствия (Этот работает) |
% | "%ITEM_ID" => "my" | Регистронезависимый поиск по подстроке |
? | "?PARAM1" => "forum|iblock" | Использование в фильтре сложной логики |
>, <, >=, <= | ">=PARAM1" => "44" | Выборка с использованием оператора |
>< | "><PARAM2" => array(10, 20) | Выборка значений диапазона |