Пытаюсь запилить модуль поиска по параметрам для версии 5.5.2.1
судя по содержимому функции do_search в файле controller.php он там по умолчанию должен быть, но что то меня он напрягает он ведёт себя как-то странно. Насколько я понял он собирает данные из форм в массив, потом склеивает его в одну строку и отправляет запрос на обычный текстовый поиск.
Попытался сделать вот-так:
- Код: Выделить всё
foreach ($res as $r){
$oPage = Page::getById($r['cID']);
$stock = $oPage->getAttribute('stock');
$type = $oPage->getAttribute('new_type');
$level = $oPage->getAttribute('level');
$origin = $oPage->getAttribute('origin');
if(!empty($qa[0])) {if ($origin != $qa[0]) {continue;}}
if(!empty($qa[1])) {if ($stock != $qa[1]) {continue;}}
if(!empty($qa[2])) {if ($type != $qa[2]){continue;}}
if(!empty($qa[3])) {if ($level != $qa[3]){continue;}}
$results[] = new IndexedSearchResult($r['cID'], $r['cName'], $r['cDescription'], $r['score'], $r['cPath'], $r['content']);
}
Но что-то не работает.
Так пытался сделать потому что функция filterByAttribute описанная в документации разработчика на оф.сайте, не пашет....
Подскажите пожалуйста что-нужно исправить?