Поиск в страницах CMS
igortitaev
Новичок
: 7
: 29-05-2013


26-01-2016 15:58
Господа, подскажите, пожалуйста, есть ли возможность, что бы стандартный быстрый поиск искал по всему сайту, не только по каталогу.
Версия Prestashop: 1.5.6.1
Спасибо
 
  
Алекс


Администратор
: 4516
: Красноярск
: 29-05-2009


26-01-2016 22:55
Да, пишите доп. методы, расширяя общий функционал (если в этом имеется необходимость).

По-быстрому (для ajax-поиска):
Файл: /controllers/front/SearchController.php после:
Код:
foreach ($searchResults as &$product)
    $product['product_link'] = $this->context->link->getProductLink($product['id_product'], $product['prewrite'], $product['crewrite']);
добавьте:
Код:
foreach($words as $word)
    $score_array[] = 'content LIKE \'%'.pSQL($word).'%\'';
$res = Db::getInstance()->executeS('SELECT `id_cms` id_product, `meta_title` pname, `link_rewrite` prewrite FROM '._DB_PREFIX_.'cms_lang
    WHERE id_lang = '.(int)Tools::getValue('id_lang').'
    AND ('.implode(' OR ', $score_array).')
    LIMIT 5
');
foreach ($res as &$i)
    $i['product_link'] = $this->context->link->getCMSLink($i['id_product'], $i['prewrite']);
$searchResults = array_merge($res, $searchResults);
 
  
igortitaev
Новичок
: 7
: 29-05-2013


26-01-2016 23:54
Спасибо, к сожалению не заработало
 
  
Алекс


Администратор
: 4516
: Красноярск
: 29-05-2009


27-01-2016 00:03
Цитата:( igortitaev @ 27-01-2016 00:54 Смотреть сообщение )
не заработало
до кода:
Код:
foreach($words as $word)
добавьте:
Код:
$words = explode(' ', $query);
 
  
igortitaev
Новичок
: 7
: 29-05-2013


27-01-2016 01:56
Огромное спасибо за помощь!