Михаил

Михаил

С нами с 08 октября 2016; Место в рейтинге пользователей: #479

mSearch2+mFilter2+ajax+нерабочая сортировка. Хелп

Добрый день.
Прошу помощи, потому что не получается разобраться. На сайте реализован фильтр через сниппет mFilter2 с ajax-фильтрацией.

Задача — сделать разную сортировку, в зависимости от выбранных фильтров.

При выборе параметров фильтра отправляется аякс-запрос по адресу
/assets/components/msearch2/action.php
с пост параметрами
action=filter
key=key
limit=10
pageId=11569
и полученный результат отображается пользователю. Если в этот запрос я добавлю переменную sort=RAND(), что по идее должно менять порядок объектов, и загружу его несколько раз, то увижу, что каждый раз приходит одинаковый ответ. Рандом не работает.

Хелп, в чем дело?
Михаил
17 ноября 2017, 00:02
modx.pro
1 131
0

Каталог на 5млн товаров с фильтрами

Коллеги, добрый день.

Прошу именно совета КАК реализовывать каталог на 5млн товаров с фильтрами в категориях. Сейчас на стадии выбора пути, по которому делать. Хотел бы услышать совет девелоперов, которые уже реализовывали нечто подобное. Это может быть и НЕ модх. Пхп+майскул.

Может быть уже есть готовые компоненты? Ведь задача типовая…

Задача:
  • 5млн товаров (женские и мужские вещи, аксессуары, обувь)
  • 250 категорий с уровнем вложенности 5
  • 8 фильтров для всех категорий (фильтры одинаковые):
    • Брэнд (множественный выбор)
    • Магазин (множественный выбор)
    • Диапазон цены (числа, от и до)
    • Сезон (множественный выбор)
    • Размер (множественный выбор)
    • Скидка (числа, от)
    • В наличии (чекбокс)
  • Находясь в категории в ней видны и фильтруются товары вложенных категорий
  • Каталог работает очень быстро
  • Во всех категориях фильтры одинаковые, хочется не отсечь возможность в будущем использовать разные фильтры для разных категорий
Михаил
07 августа 2017, 11:49
modx.pro
4
3 381
+1

Конструкция (...AND...) OR (...AND...) в &where

Добрый день.

В параметр &where pdoResources передается json-массив параметров для фильтрации. Как должен выглядеть массив следующего вида?

(условие1 LIKE '%%' или условие2 LIKE '%%' или условие3 LIKE '%%') И (условие4 LIKE '%%' или условие5 LIKE '%%' или условие6 LIKE '%%')

Оф документация тут docs.modx.com/xpdo/2.x/class-reference/xpdoquery/xpdoquery.where, но в ней не написано вроде бы…

Спасибо!
Михаил
20 июля 2017, 16:44
modx.pro
3 071
0

Сложная конструкция в &where с ТВ-параметрами

Добрый день.
Что-то никак не могу разобраться как сделать сложный запрос через &where. Прошу подсказать.

Задача:
Мне нужно получить список ресурсов, у которых:
1. template = 3
2. goodSfera LIKE '%#134#%'
3. goodFormFactor LIKE '%#141#%'
4. goodAdv LIKE '%#123#%' OR goodAdv LIKE '%#127#%' OR goodAdv LIKE '%#128#%'

goodSfera, goodFormfactor и goodAdv — это ТВ-параметры, количество goodAdv может быть до 10 условий.

Как должен выглядеть &where-запрос? Вот так не хочет работать, точнее выдает без учета фильтра:
{"template":3,"goodSfera:LIKE":"%#134#%","goodFormfactor:LIKE":"%#141#%","goodAdv LIKE '#123#' OR goodAdv LIKE '#127#' OR goodAdv LIKE '#128#'"}

Я полагаю, что ошибка связана с goodAdv конструкцией, потому что без него фильтр работает корректно.

В конечном счете я хочу получить вот такой запрос:
SELECT ... WHERE goodSfera LIKE '%#134#%' AND goodFormFactor LIKE '%#141#%' AND (goodAdv LIKE '%#123#%' OR goodAdv LIKE '%#127#%' OR goodAdv LIKE '%#128#%')
Спасибо за подсказки.
Михаил
19 июля 2017, 12:37
modx.pro
995
0

[pdoTools] Error 42S22: Unknown column 'good.sfera

Привет.
Прошу помощи, т.к. никак не могу победить ошибку
[pdoTools] Error 42S22: Unknown column 'good.sfera' in 'where clause'

Вызываю pdoResources через собственный сниппет и передаю в &where следующую строку:
{"template":3,"good.sfera:LIKE":"%#135#%"}

good.sfera — ТВ переменная документа, у которого template=3
Точно есть ресурс с заполненным ТВ параметром good.sfera = '#135#'

PS: если убрать из &where мою ТВ переменную и оставить только шаблон, то все работает корректно.
Михаил
17 июля 2017, 23:58
modx.pro
2 759
0