Как запретить категорию в поиске?

Автор Sancho222, 20 сентября 2021, 15:47:56

« назад - далее »

Sancho222

Из-за сео, нельзя отключать товары которые уже не продаются.
У меня есть категория "снятые с производства"
Подскажите, как можно запретить эту категорию в поиске движка, чтобы клиентам не показывались от туда товары?

kvestin80

Можно создать новую группу клиентов и в категории установить Доступ группы только для нее. Тогда Посетитель, Клиент не сможет видеть эту категорию.

petros

Модуль установите Advanced Search. Удалите дефольтный блок поиска. В модуле Advanced Search исключите категорию из поска.
Модуль платный, но можно найти и бесплатно.

Adik

Можно изменить вывод товаров, которые с количеством 0 в конце.
На форуме есть тема как такое сделать.

Sancho222

Цитата: kvestin80 от 20 сентября 2021, 16:38:33
Можно создать новую группу клиентов и в категории установить Доступ группы только для нее. Тогда Посетитель, Клиент не сможет видеть эту категорию.
Тогда поисковики тоже его не найдут, а мне нужно чтоб товар у них оставался.

Sancho222

Цитата: Adik от 20 сентября 2021, 18:12:15
Можно изменить вывод товаров, которые с количеством 0 в конце.
На форуме есть тема как такое сделать.
У нас не ведутся остатки в магазине.

Sancho222

Цитата: petros от 20 сентября 2021, 16:42:05
Модуль установите Advanced Search. Удалите дефольтный блок поиска. В модуле Advanced Search исключите категорию из поска.
Модуль платный, но можно найти и бесплатно.
Чудом сбежал от этого фильтра, жутко нагружал систему, поставил амазинг и теперь счастлив.
Думаю можно в коде шаблона где-то поставить ограничения

PrestaMan

В sql запросе поиска можно исключить категорию по ид.
Эксперт Prestashop - решения всех проблем, написание модулей, создание тем для интернет-магазинов под Prestashop.
Эксперт Magento - создам сайт на Magento, программирование кастомных модулей для Magento, кастомизация тем Magento.
Лучшие цены!!!

Sancho222

Цитата: PrestaMan от 21 сентября 2021, 09:50:07
В sql запросе поиска можно исключить категорию по ид.
Это наверное лучший вариант, подскажите пожалуйста, как это можно сделать?

PrestaMan

$results = $db->executeS('
SELECT DISTINCT cp.`id_product`
FROM `' . _DB_PREFIX_ . 'category_product` cp
' . (Group::isFeatureActive() ? 'INNER JOIN `' . _DB_PREFIX_ . 'category_group` cg ON cp.`id_category` = cg.`id_category`' : '') . '
INNER JOIN `' . _DB_PREFIX_ . 'category` c ON cp.`id_category` = c.`id_category`
INNER JOIN `' . _DB_PREFIX_ . 'product` p ON cp.`id_product` = p.`id_product`
' . Shop::addSqlAssociation('product', 'p', false) . '
WHERE c.`active` = 1 AND cp.`id_category` <> 'id категории, которую нужно исключить'
AND product_shop.`active` = 1
AND product_shop.`visibility` IN ("both", "search")
AND product_shop.indexed = 1
' . $sql_groups, true, false);
Эксперт Prestashop - решения всех проблем, написание модулей, создание тем для интернет-магазинов под Prestashop.
Эксперт Magento - создам сайт на Magento, программирование кастомных модулей для Magento, кастомизация тем Magento.
Лучшие цены!!!