Как заставить стандартный модуль фильтра Joomshopping (Module Filter) на странице товара и на главно

Тема в разделе "JoomShopping", создана пользователем Serguk1307, 15.02.2014.

  1. allagearh
    Offline

    allagearh Недавно здесь

    Регистрация:
    06.05.2016
    Сообщения:
    2
    Симпатии:
    0
    Пол:
    Мужской
    Могу предложить такой вариант решения
    Код (PHP):
    1. ...
    2.     //--------- Фильтр по брендам вне категорий -------
    3.     if($show_manufacturers){
    4.         if($_SESSION['label_id'] != $_REQUEST['label_id']){
    5.             $_SESSION['label_id'] = $_REQUEST['label_id'];
    6.             $manufacturers = false; // На новой странице сбрасываем фильтр
    7.         }
    8.         $db = JFactory::getDBO();        
    9.         $query = "SELECT distinct man.manufacturer_id as id, man.`name_ru-RU` as name FROM `#__jshopping_products` AS prod        
    10.         LEFT JOIN `#__jshopping_manufacturers` as man on prod.product_manufacturer_id = man.manufacturer_id
    11.         WHERE prod.label_id = '".$_SESSION['label_id']."' AND prod.product_publish = '1' AND prod.product_manufacturer_id!=0 order by man.ordering";
    12.         $db->setQuery($query);
    13.         $filter_manufactures_label = $db->loadObjectList();
    14.     }
    15.     //--------------------------------------------------------------------
    16.  
    17.     if ($show_manufacturers){ // -----------
    18.    
    19.         $category = JTable::getInstance('category', 'jshop');
    20.         $category->load($category_id);
    21.        
    22.         $manufacturers = $mainframe->getUserStateFromRequest( $contextfilter.'manufacturers', 'manufacturers', array());
    23.         $manufacturers = filterAllowValue($manufacturers, "int+");    
    24.        
    25.         $filter_manufactures = $category->getManufacturers();
    26.        
    27.         if(empty($filter_manufactures)){ // вне категорий, будет работать наш метод протезирования
    28.             $filter_manufactures = $filter_manufactures_label;
    29.         }
    30.     }
    31.  
    32. ...

    не самый изящный, но рабочий и суть понятна
     
  2. OlegM
    Offline

    OlegM Russian Joomla! Team Команда форума

    Регистрация:
    12.04.2007
    Сообщения:
    4 310
    Симпатии:
    375
    Пол:
    Мужской
    А зачем 2 одинаковых условия?
     
  3. allagearh
    Offline

    allagearh Недавно здесь

    Регистрация:
    06.05.2016
    Сообщения:
    2
    Симпатии:
    0
    Пол:
    Мужской
    Впринцепи в первом случае можно убрать условие вообще, суть примера не поменяется. Главное что, я надеюсь, смысл работы этого куска донес, а как этим распорядиться ребята пусть сами решают.
     

Поделиться этой страницей

Загрузка...