Выдано 126294 лицензии

Вторая версия расширенных фильтров (как в Яндекс.Маркете)

Re: Вторая версия расширенных фильтров (как в Яндекс.Маркете)
#
PakoGonsalezZ
Kotoff,
Здравствуйте ,почему то перестал работать функционал работы фильтра
Ранее - задавал дефолтную сортировку по наличию и цене

if (is_null(Core_Array::getGet('sorting')))
{
   $_GET['sorting'] = array('1','rest_0');
   
}

Все работало, но недавно перестало, в xml все данные есть
<used>
         <sorting query="sorting">1</sorting>
         <sorting query="sorting">rest_0</sorting>
      </used>

Но работает только одна сортировка - по наличию

ПрофильЦитировать выделенное15.07.2019 14:45:34 • Сообщений: 203
Re: Вторая версия расширенных фильтров (как в Яндекс.Маркете)
#
Kotoff
PakoGonsalezZ,  само по себе сломаться не могло )
Значит что-то поменяли у себя на сайте.
Поскольку обновлений фильтров у меня давно никто не запрашивал, то значит в самом модуле у вас ничего не менялось, и проблема не в модуле а в чем-то другом, на вашей стороне.
Заказов не беру. Консультирую редко.

ПрофильЦитировать выделенное15.07.2019 15:56:22 • Сообщений: 2380
Re: Вторая версия расширенных фильтров (как в Яндекс.Маркете)
#
PakoGonsalezZ
Kotoff,
А вот непонятно почему, просто факт не работает, по одной каждая сортировка работает - вместе никак, что только не ковырял, это же предусмотрено штатно? Использовать несколько сортировок?
http://joxi.ru/v29oPneFZJwzvr
В коде фильтра обе сортировки также выбраны
Но все равно работает только одна - по наличию

ПрофильЦитировать выделенное16.07.2019 01:49:56 • Сообщений: 203
Re: Вторая версия расширенных фильтров (как в Яндекс.Маркете)
#
PakoGonsalezZ
Kotoff,
Понял в чем проблема, первыми шли товары у которых количество 2, они были отстортированы по цене ,потом идут товары у которых количество 1 они также отстортированы по цене. Подскажите ,могу ли я как то в сортировку добавить просто чтобы отстортировал товары у которых количество больше 0 и  их уже по цене, это мне нужно при открытии страницы без выбранных фильтров(дефолтная сортировка)
Есть такая опция наличие http://joxi.ru/krDGl0ecKqyepA
Я пробовал в сортировку указать    
$_GET['sorting'] = array('1','in_rest_1');

как со свойствами, но ничего не вышло, мб подскажете что можно сделать.
Еще раз повторю задачу - нужно чтобы дефолтная сортировка без каких либо выбранных фильтров отстортировывала товары по наличию(больше 0) и цене.
Если есть где то документация по фильтрам развернутая, можете дать ссылку? Мб там описаны способы написания своих сортировок?

ПрофильЦитировать выделенное16.07.2019 12:13:31 • Сообщений: 203
Re: Вторая версия расширенных фильтров (как в Яндекс.Маркете)
#
Roman Fov
Попробуйте примерно так

/**
* Внимание!
* Любой код, влияющий на исходную (т.е. без учета фильтров) выборку товаров
* необходимо разместить перед этим комментарием!
* Ни в коем случае не ниже, и не в соседней вкладке!
* А то все поломается и работать ничего не будет :)
*
* UPD: При добавлении условий в $Shop_Controller_Show->shopItems()->queryBuilder()
* ОБЯЗАТЕЛЬНО включите флаг $Shop_Controller_Show->dontResetItems(true)
* Пример: отбор товаров, дороже 100 рублей.
* $Shop_Controller_Show
*   ->dontResetItems(TRUE)
*    ->shopItems()
*       ->queryBuilder()
*          ->where('price', '>', '100');
**/
if (Здесь проверяем, что не прилетело из гет ненужное) {
   $Shop_Controller_Show
      ->dontResetItems(TRUE)
      ->shopItems()
      ->queryBuilder()
      ->join('shop_warehouse_items', 'shop_warehouse_items.shop_item_id', '=', 'shop_items.id')
      ->where('shop_warehouse_items.count', '>', '0')
      ->where('shop_warehouse_items.shop_warehouse_id', '=', 111) // Здесь пишем ид склада с товаром
      ->clearOrderBy()
      ->orderBy('shop_items.price', 'ASC');
}


В настройки тдски в правильное место вставить надо. Там комментарий должен быть этот здоровенный
Email: roman.fov@gmail.com Skype: roman-fov

ПрофильЦитировать выделенное16.07.2019 13:22:12 • Сообщений: 315
Re: Вторая версия расширенных фильтров (как в Яндекс.Маркете)
#
PakoGonsalezZ
Roman Fov,
А если складов несколько? В частности 3 штуки

ПрофильЦитировать выделенное16.07.2019 13:26:37 • Сообщений: 203
Re: Вторая версия расширенных фильтров (как в Яндекс.Маркете)
#
Roman Fov
Тогда 'IN', array(123, 124, 125) или сгруппировать товары с количеством по складу
Email: roman.fov@gmail.com Skype: roman-fov

ПрофильЦитировать выделенное16.07.2019 13:30:26 • Сообщений: 315
Re: Вторая версия расширенных фильтров (как в Яндекс.Маркете)
#
PakoGonsalezZ
Roman Fov,

Разместил этот код
if (is_null(Core_Array::getGet('sorting')))
{
    $Shop_Controller_Show
      ->dontResetItems(TRUE)
      ->shopItems()
      ->queryBuilder()
      ->join('shop_warehouse_items', 'shop_warehouse_items.shop_item_id', '=', 'shop_items.id')
      ->where('shop_warehouse_items.count', '>', '0')
      ->where('shop_warehouse_items.shop_warehouse_id', 'IN', array(1, 3, 4)) // Здесь пишем ид склада с товаром
      ->clearOrderBy()
      ->orderBy('shop_items.price', 'ASC');
}

Как я понял он вывел товары которые есть на всех трех  складах только, остальные вообще не вывел, а по цене вообще ничего не отстортировал

ПрофильЦитировать выделенное16.07.2019 13:40:27 • Сообщений: 203
Re: Вторая версия расширенных фильтров (как в Яндекс.Маркете)
#
Roman Fov
PakoGonsalezZ, странные дела. Могу глянуть на месте. Если интересно, то
Email: roman.fov@gmail.com Skype: roman-fov

ПрофильЦитировать выделенное16.07.2019 13:49:21 • Сообщений: 315
Re: Вторая версия расширенных фильтров (как в Яндекс.Маркете)
#
PakoGonsalezZ
Добрый день, возможно ли создания страниц фильтрации?
имеется ввиду ,страницы с выбранными фильтрами, куда можно разместить описание а также настроить url
Если нет, не планируется ли это в будущем?

ПрофильЦитировать выделенное11.08.2019 18:17:22 • Сообщений: 203
Авторизация