- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Через get параметры. Например p10=100-102
Я не про это, а про то, как вы строите фильтр без чисел, это же какие то характеристики товаров которые есть в этом разделе. Вот как вы их получаете, явно не через гет параметры, а вы делаете какие то манипуляции с БД
Я не про это, а про то, как вы строите фильтр без чисел, это же какие то характеристики товаров которые есть в этом разделе. Вот как вы их получаете, явно не через гет параметры, а вы делаете какие то манипуляции с БД
Добрый день.
Не совсем понял про числа...
В базе данных есть
таблица property_values(property_value_code, property_code, property_value)
property_value_code - код варианта
property_code - код характеристики
property_value - значение варианта
Таблица products_property(product_id, property_code, property_value_code)
product_id - код товара
property_code - код характеристики
property_value_code - код варианта
В базе данных есть
В целом все же я могу вам посоветовать лучше воспользоваться эластиком, там уже все это есть и работает очень быстро, либо если товаров не много можете воспользоваться облачным сервисом algolia, там есть бесплатный тариф
Странная какая-то тема. Такое впечатление, что каждый говорит о чём-то своём, и никто друг друга не понимает. По крайней мере я так ничего и не понял по задачам, стоящим перед ТС.
ТС хочет чтобы в его фильтре рядом со значением была цифра соответствующая товарам этому значению.
Например у него есть диваны и фильтр: Прямой, Угловой и ТС хочет чтобы у него было как Прямой (200), Угловой (120), вот ему надо как то получить 200 и 120, но судя по вопросам предполагаю, что ему что то готовое нужно
По крайней мере я так ничего и не понял по задачам, стоящим перед ТС.
В теме проскакивало про фасетный фильтр. Вот только ТС написал, что уже сделал «фасеточный поиск» 😐
Добрый день.
Сам «фасеточный поиск» я сделал. Не смог сделать другое...
Вот пример запроса который выдает список вариантов характеристик по определенной категории в случае, когда не выбрали не одного варианта, а значит и нет get параметров для фильтрации.
SELECT pv.property_value_code, pv.property_code, pp.property_value, fp.filter_prop_code, count(pp.product_id) AS count_products
from property_values pv, products_property pp, filter_props fp, property p,
(SELECT p1.product_id, v1.variant_id
FROM products p1, contents c1, variants v1
WHERE c1.object_id=p1.product_id AND
v1.product_id=p1.product_id AND
v1.variant_default=1 and
c1.parent=320412) z2
WHERE pp.property_code=pv.property_code AND
p.property_code=pp.property_code AND
p.property_status=1 AND
pv.property_value_code=pp.property_value_code AND
fp.property_code=pv.property_code AND
fp.filter_prop_status=1 AND
z2.product_id=pp.product_id
GROUP BY pv.property_value_code, pv.property_code, pp.property_value, fp.filter_prop_code
ORDER BY pv.property_code, pp.property_value
Проблема в том, что нужен алгоритм фильтрации и получения списка вариантов при выборе пользователем.
320412 - код категории
count_products - количество товара варианта
property_code - код характеристики
property_value_code - код значения варианта
ТС хочет чтобы в его фильтре рядом со значением была цифра соответствующая товарам этому значению.
Например у него есть диваны и фильтр: Прямой, Угловой и ТС хочет чтобы у него было как Прямой (200), Угловой (120), вот ему надо как то получить 200 и 120, но судя по вопросам предполагаю, что ему что то готовое нужно
Правильно, мне нужно получить 200 и 120 но и также убрать варианты с нулевыми количествами. Нужен алгоритм, готовое вряд ли подойдет (разве что как пример)
Вот пример запроса
Сами писали, или кого-то попросили? С такими запросами ваш сайт будет лежать и не вставать.
Проблема в том, что нужен алгоритм фильтрации и получения вариантов при выборе пользователем
Не знаете, куда вставить GET-параметры?
Сами писали, или кого-то попросили? С такими запросами ваш сайт будет лежать и не вставать.
Не знаете, куда вставить GET-параметры?
Скорость - менее 1 секунды при 10000 товаров в категории (которые есть в наличии, а так товаров больше). База на PostgreSQL 14.
Просто вставить get параметры не проблема, но это не то что нужно. К примеру товар - это книга, фильтр по характеристикам - бренд (выбрали вариант Эксмо) и год издания (выбрали 2020, 2021)
Мне нужно чтобы варианты были не только выбранные но и оставшиеся невыбранными (с количеством товаров в скобках). Если количество ноль - вариант не показывается. Если просто фильтровать по get параметрам то останутся только выбранные варианты