Поиск

#
Поиск
Перечитал кучу тем, но так и не понял как сделать так, чтоб товары которых нет в наличии не отображались в поиске
#
Re: Поиск
Для этого можно использовать такой хук:

class Shop_Item_Indexing
{
   static public function indexingShopItems($object, $args)
   {
      $args[0]
      ->queryBuilder()
      ->leftJoin('shop_warehouse_items', 'shop_warehouse_items.shop_item_id', '=', 'shop_items.id')
      ->having('SUM(shop_warehouse_items.count)', '>', 0)
      ->groupBy('shop_items.id');
   }
}


Core_Event::attach('Shop_Module.indexingShopItems', array('Shop_Item_Indexing', 'indexingShopItems'));


После его добавления нужно будет выполнить переиндексацию сайта.
«Не выходи из комнаты, не совершай ошибку…»
#
Re: Поиск
llirik, огромное спасибо, а то уже всю голову сломал, только вникаю в систему
#
Re: Поиск
aleksandrovich,
Добавьте этот Хук  в bootstrap.php и не забудьте сделать "Переиндексацию сайта"
E-mail: info@syrbek.ru / телега: @syrbek /skype: activexm / syrbek.ru / Поддержка сайтов / г. Москва [HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, Git, SVN, Redmine]
Модератор
#
Re: Поиск
Исключение модификаций из индексации:
class Shop_Item_Indexing
{
   static public function indexingShopItems($object, $args)
   {
      $args[0]
        ->queryBuilder()
        ->where('shop_items.modification_id', '=', 0);
   }
}


Core_Event::attach('Shop_Module.indexingShopItems', array('Shop_Item_Indexing', 'indexingShopItems'));


затем переиндексировать сайт.
Авторизация