Filtry PrestaShop: nawigacja fasetowa krok po kroku
Jak ustawić filtry w PrestaShop 8 i 1.7: moduł ps_facetedsearch, szablony filtrów, indeksy i cron, typowe błędy oraz adresy z filtrami a Google.

W skrócie
- Filtry wymagają trzech rzeczy: szablonu przypisanego do kategorii, zbudowanych indeksów cen i atrybutów oraz cech uzupełnionych w produktach.
- Indeksy odświeżaj zadaniem cron, ceny co noc; po dużym imporcie uruchom indeksowanie ręcznie, nie czekając na harmonogram.
- Adresy z parametrem q są domyślnie dostępne dla robotów: zdecyduj, czy blokujesz je w robots.txt, czy chcesz je mieć w Google.
- Filtry zawężają tylko listę, którą klient już otworzył; Searchkeen pokazuje wyniki wyszukiwania od razu z kategoriami, filtrami i sortowaniem.
Spis treści
- Czego potrzebujesz, zanim zaczniesz?
- Jak włączyć i skonfigurować filtry krok po kroku?
- Krok 1. Otwórz konfigurację modułu
- Krok 2. Zbuduj indeksy
- Krok 3. Utwórz szablon filtrów
- Krok 4. Ustaw opcje wyświetlania
- Krok 5. Zaplanuj cron
- Jakie typy filtrów masz do wyboru?
- Jak działa limit głębokości kategorii?
- Czym różnią się filtry w PrestaShop 1.7 i 8?
- Dlaczego filtry się nie pokazują albo działają wolno?
- Jak adresy z filtrami wpływają na Google?
- Kiedy filtry kategorii to za mało?
Filtry w PrestaShop obsługuje wbudowany moduł Nawigacja fasetowa, czyli ps_facetedsearch. Żeby zadziałały, potrzebne są trzy rzeczy: szablon filtrów przypisany do kategorii, zbudowane indeksy cen i atrybutów oraz produkty z uzupełnionymi cechami. Gdy filtry się nie pokazują, zwykle brakuje jednej z nich. Całość ustawisz w konfiguracji modułu. Filtry zawężają jednak tylko listę, którą klient już otworzył: słabych wyników wyszukiwania nie poprawią.
Czego potrzebujesz, zanim zaczniesz?
Dostępu do panelu z prawem konfiguracji modułów, produktów z przypisanymi cechami lub atrybutami i kilkunastu minut. Do zadań cron przyda się też dostęp do harmonogramu na hostingu.
- Wersja modułu. Sprawdź ją w menedżerze modułów. Według repozytorium wersja 3.16 działa od PrestaShop 1.7.6, a wersje 5.x wymagają PrestaShop 8.2 lub nowszego.
- Dane w produktach. Filtr może pokazać tylko to, co jest wpisane w produktach: cechy, atrybuty kombinacji, markę, cenę, stan magazynowy.
Nazwy przycisków i opcji podaję po angielsku, tak jak w kodzie modułu. W polskim panelu są przetłumaczone, a brzmienie zależy od wersji, dlatego dopisuję, do czego każda służy.
Jak włączyć i skonfigurować filtry krok po kroku?
W pięciu krokach: otwórz konfigurację modułu, zbuduj indeksy, utwórz szablon filtrów, ustaw opcje wyświetlania i zaplanuj cron. Kolejność ma znaczenie, bo szablon bez aktualnych indeksów pokaże niepełne albo nieaktualne filtry.
Krok 1. Otwórz konfigurację modułu
W menedżerze modułów znajdź „Faceted search” (Nawigacja fasetowa), upewnij się, że moduł jest włączony, i wejdź w konfigurację. Ekran ma trzy sekcje: „Indexes and caches”, „Filters templates” i „Configuration”.
Po czym poznasz, że działa: w środkowej sekcji jest tabela szablonów albo komunikat „No filter template found.”.
Krok 2. Zbuduj indeksy
Moduł korzysta z osobnych tabel z cenami i atrybutami, które trzeba zbudować i odświeżać. W sekcji „Indexes and caches” są cztery przyciski:
- „Index all missing prices” dopisuje ceny produktów, których w indeksie jeszcze nie ma,
- „Rebuild entire price index” buduje indeks cen od zera,
- „Build attributes and features indexes” buduje indeks atrybutów i cech,
- „Clear cache” czyści pamięć podręczną bloków z filtrami.
Za pierwszym razem uruchom pełną przebudowę cen i indeks atrybutów. Dopóki widzisz komunikat „Indexing is in progress. Please do not leave this page”, zostaw kartę otwartą.
Po czym poznasz, że działa: pojawiają się komunikaty „Price indexing finished” i „Attribute indexing finished”.
Krok 3. Utwórz szablon filtrów
Szablon mówi, które filtry, w jakiej kolejności i w których kategoriach zobaczy klient. Kliknij „Add new template” i ustaw po kolei:
- Nazwę szablonu. Widzisz ją tylko Ty w panelu.
- Strony, na których szablon działa („Pages using this template”). Do wyboru są: kategoria, marka, dostawca, nowości, bestsellery, promocje i wyniki wyszukiwania.
- Kategorie, których szablon dotyczy. Uwaga: wybranie wszystkich kategorii kasuje istniejące szablony, o czym moduł ostrzega przed zapisem.
- Filtry. Każdy włączasz przełącznikiem, a kolejność zmieniasz przeciąganiem.
- Dla każdego filtra styl („Filter style”: Checkbox, Radio button albo Drop-down list) i limit liczby pokazywanych wartości („Filter result limit”).
Po czym poznasz, że działa: szablon jest w tabeli „Filters templates”, a w wybranej kategorii sklepu pojawił się blok filtrów.
Krok 4. Ustaw opcje wyświetlania
Sekcja „Configuration” dotyczy wszystkich szablonów naraz. Najważniejsze przełączniki:
- „Show the number of matching products” pokazuje liczbę produktów przy każdej wartości. Moduł sam zaznacza, że wyłączenie tej opcji nie przyspieszy sklepu, bo produkty i tak trzeba policzyć.
- „Show products from subcategories” wyświetla w kategorii także produkty z podkategorii.
- „Use tax to filter price” i „Use rounding to filter price” decydują, czy filtr ceny liczy kwoty z podatkiem i czy je zaokrągla.
- „Show unavailable, out of stock last” przesuwa niedostępne produkty na koniec listy.
- „Enable cache system” włącza pamięć podręczną bloków z filtrami.
- „Default filter template for new categories” przypisuje wybrany szablon do każdej nowej kategorii.
Po czym poznasz, że działa: po odświeżeniu kategorii widzisz liczniki przy wartościach filtrów.
Krok 5. Zaplanuj cron
Pod przyciskami indeksów moduł wyświetla cztery gotowe adresy: dopisanie brakujących cen, pełna przebudowa cen, przebudowa indeksu atrybutów i czyszczenie pamięci podręcznej. Zaleca uruchamianie ich codziennie albo co tydzień, a przy cenach przebudowę nocną. Każdy adres zawiera token, więc skopiuj go z panelu w całości:
30 2 * * * curl "ADRES_PRZEBUDOWY_CEN_SKOPIOWANY_Z_PANELU"
45 2 * * * curl "ADRES_INDEKSU_ATRYBUTOW_SKOPIOWANY_Z_PANELU"
Po czym poznasz, że działa: produkt dodany wieczorem jest następnego dnia widoczny po zaznaczeniu filtra ceny i cechy.
Jakie typy filtrów masz do wyboru?
Siedem filtrów stałych oraz po jednym na każdą grupę atrybutów i każdą cechę w sklepie. Stałe to podkategorie, dostępność, stan produktu, marka, cena, waga i filtr dodatków.
| Filtr (nazwa w module) | Co filtruje | Skąd bierze dane |
|---|---|---|
| Sub-categories filter | Podkategorie bieżącej kategorii | Drzewo kategorii |
| Product stock filter | Dostępność | Stany magazynowe |
| Product condition filter | Stan produktu, np. nowy lub używany | Pole stanu w produkcie |
| Product brand filter | Marka | Marka przypisana do produktu |
| Product price filter (slider) | Cena, jako suwak | Indeks cen |
| Product weight filter (slider) | Waga, jako suwak | Waga produktu |
| Attribute group | Atrybuty kombinacji, np. rozmiar, kolor | Atrybuty |
| Feature | Cechy, np. materiał, moc, pojemność | Cechy |
Na liście jest jeszcze „Product extras filter”. Oficjalna dokumentacja nie opisuje go szczegółowo, więc włącz go na próbę i zobacz, jakie wartości pokaże.
Jak działa limit głębokości kategorii?
Opcja „Category filter depth” ustala, ile poziomów podkategorii pokaże filtr kategorii. Wartość domyślna 1 oznacza tylko bezpośrednie podkategorie, a 0 oznacza brak limitu.
Przykład: w kategorii „Ogród” z podkategoriami „Kosiarki” i „Myjki ciśnieniowe” głębokość 1 pokaże w filtrze tylko te dwie pozycje. Głębokość 2 dołoży ich podkategorie, na przykład „Kosiarki spalinowe”. Przy rozbudowanym drzewie wartość 0 daje długą listę, dlatego zacznij od 1 albo 2. O tym, czy w kategorii nadrzędnej widać produkty z podkategorii, decyduje osobny przełącznik „Show products from subcategories”.
Czym różnią się filtry w PrestaShop 1.7 i 8?
Różnice wynikają z wersji modułu, a nie samego sklepu. Wersja 3.16 działa i na PrestaShop 1.7.6, i na 8, więc ekran wygląda tam tak samo; inaczej wyglądają starsze wydania z czasów 1.7 i najnowsze 5.x.
- Starszy ekran, opisany w specyfikacji dla 1.7: ma przycisk „Build url index”, opcję ukrywania wartości bez pasujących produktów oraz przełącznik, który pozwala robotom wyszukiwarek korzystać z filtrów stanu, dostępności i marki.
- Wersja 3.16: ma indeks atrybutów i cech, przycisk „Clear cache”, opcję „Enable cache system”, wybór stron dla szablonu i szablon domyślny dla nowych kategorii. Wydanie 3.16.0 przyniosło według historii wydań dużą poprawę wydajności list produktów.
- Wersje 5.x: wymagają PrestaShop 8.2. Wersja 5.1 dodaje dla cech styl „Checkbox (AND)” oraz sortowanie wartości cech według pozycji z katalogu.
Wniosek: przed szukaniem błędu w ustawieniach zaktualizuj moduł do najnowszej wersji zgodnej z Twoim sklepem.
Dlaczego filtry się nie pokazują albo działają wolno?
Najpierw sprawdź szablon, potem dane w produktach, na końcu indeksy i pamięć podręczną. W tej kolejności, bo brak szablonu dla kategorii wyłącza filtry całkowicie, a pozostałe przyczyny psują je częściowo.
| Objaw | Co sprawdzić | Naprawa |
|---|---|---|
| W kategorii nie ma bloku filtrów | Czy istnieje szablon obejmujący tę kategorię i stronę kategorii. W sklepach od 20000 produktów wersja 3.16 nie tworzy szablonu domyślnego przy instalacji | Utwórz szablon ręcznie i zaznacz kategorię |
| Filtr jest w szablonie, ale klient go nie widzi | Czy produkty w tej kategorii mają przypisaną daną cechę lub atrybut | Uzupełnij dane, potem „Build attributes and features indexes” |
| Filtr ceny pomija nowe produkty | Kiedy ostatnio budowano indeks cen | „Index all missing prices” i zadanie cron |
| Liczniki przy filtrach się nie zgadzają | Czy włączona jest pamięć podręczna | „Clear cache”; moduł radzi wyłączyć pamięć podręczną, jeśli niespójności wracają |
| Nowa kategoria nie ma filtrów | Czy szablon obejmuje nowe kategorie | Ustaw „Default filter template for new categories” |
| Brak filtrów w wynikach wyszukiwania | Czy szablon obejmuje stronę Search | Zaznacz ją w szablonie; w 3.16 jest oznaczona jako eksperymentalna |
| Filtrowanie trwa długo | Wersję modułu, stan indeksów i pamięci podręcznej | Aktualizacja modułu, nocna przebudowa indeksów, włączona pamięć podręczna |
Jeden wiersz tej tabeli nie ma pełnej naprawy: filtry na stronie wyników wyszukiwania. W wersji 3.16 modułu ta strona jest oznaczona jako eksperymentalna, a filtr i tak zawęża tylko to, co wbudowana wyszukiwarka znalazła. Jeśli klient wpisał słowo w odmianie albo z literówką i dostał pustą listę, nie ma czego filtrować. Searchkeen pokazuje wyniki wyszukiwania w nakładce od razu z kategoriami, filtrami i sortowaniem, a przy tym rozumie polską odmianę i literówki. Opis jest na stronie funkcji wyszukiwarki.
Jak adresy z filtrami wpływają na Google?
Każda kombinacja filtrów to osobny adres. Google ostrzega, że nawigacja fasetowa potrafi wygenerować praktycznie nieskończoną liczbę adresów: robot traci na nie czas i wolniej odkrywa nowe, wartościowe strony.
PrestaShop zapisuje zaznaczone filtry w jednym parametrze q. Kolejne filtry oddziela ukośnikiem, a nazwę filtra od wartości myślnikiem:
https://twojsklep.pl/12-buty?q=Kolor-Czarny/Rozmiar-42
Plik robots.txt, który generuje PrestaShop 8.1.7, blokuje między innymi adresy z parametrami sortowania (order), tagów (tag) i search_query, ale parametru q na tej liście nie ma. Adresy z filtrami są więc domyślnie dostępne dla robotów.
Dokument Google o nawigacji fasetowej rozróżnia dwie sytuacje:
- Nie potrzebujesz stron z filtrami w wynikach Google. Zablokuj ich skanowanie w robots.txt albo zapisuj filtry we fragmencie adresu, po znaku kratki. Znacznik canonical i atrybut nofollow też mogą ograniczyć skanowanie, ale canonical działa dopiero z czasem, a nofollow tylko wtedy, gdy ma go każdy link prowadzący do danego adresu.
- Chcesz, żeby strony z filtrami były w Google. Google zaleca standardowy separator parametrów (znak
&), stałą kolejność filtrów bez duplikatów i kod 404 dla kombinacji, które nie zwracają żadnych produktów.
Reguły dla pierwszej sytuacji, do przetestowania w Search Console przed wdrożeniem:
User-agent: *
Disallow: /*?q=
Disallow: /*&q=
Dwie uwagi. Po pierwsze, przycisk „Generate robots.txt” w ustawieniach SEO nadpisuje cały plik, więc własne reguły dopisz po wygenerowaniu. Po drugie, blokada dotyczy wszystkich kombinacji. Jeśli wybrane zestawy, na przykład „buty czarne”, mają zdobywać ruch z Google, zrób dla nich osobne kategorie.
Kiedy filtry kategorii to za mało?
Wtedy, gdy klient nie klika po kategoriach, tylko od razu wpisuje zapytanie. Filtry modułu zawężają listę, którą ktoś już otworzył, więc nie pomogą, jeśli sama wyszukiwarka zwróci niewłaściwe produkty albo pustą stronę.
Sygnały, że Twój sklep jest w tej sytuacji:
- raport Stats > Shop search pokazuje dużo wyszukiwań, w tym frazy z zerem wyników: ci klienci filtrów nawet nie zobaczyli,
- klienci wpisują nazwę produktu w odmianie albo z literówką i dostają pustą listę, której żaden filtr nie zawęzi,
- na stronie wyników wyszukiwania filtrów nie ma wcale albo są w Twojej wersji modułu oznaczone jako eksperymentalne.
Co sprawdzić po stronie wbudowanego wyszukiwania, opisuje diagnoza dlaczego wyszukiwarka PrestaShop nie działa, a szerszy plan znajdziesz w przewodniku jak zoptymalizować wyszukiwarkę w sklepie. Oba teksty pokazują też granicę: odmiany i różnych zapisów modeli wbudowana wyszukiwarka nie obsłuży bez ręcznych aliasów.
Jeśli klienci Twojego sklepu głównie szukają, filtry powinny być częścią wyników wyszukiwania, a nie osobnym modułem obok. Searchkeen to wyszukiwarka produktów dodawana do sklepu jednym skryptem: klient dostaje nakładkę z wynikami, kategoriami, filtrami i sortowaniem, a wyszukiwarka rozumie polską odmianę, literówki i numery modeli zapisane na różne sposoby. Rozumie też cechy wpisane w zapytaniu: gdy klient napisze „buty czarne 42”, kolor i rozmiar od razu stają się filtrami, które widzi i może zdjąć jednym kliknięciem. Filtry powstają z cech i parametrów, które masz już w katalogu. Produkty czyta z API PrestaShop w trybie tylko do odczytu, więc w sklepie niczego nie zmienia. Podłączenie opisuje strona Searchkeen dla PrestaShop.
Najczęstsze pytania
Czy moduł ps_facetedsearch jest płatny?
Nie. To moduł rozwijany przez projekt PrestaShop w publicznym repozytorium, z otwartym kodem. W panelu sklepu znajdziesz go pod nazwą Faceted search, po polsku Nawigacja fasetowa. Wersje 5.x wymagają PrestaShop 8.2 lub nowszego, a wersja 3.16 działa od PrestaShop 1.7.6.
Jak często przebudowywać indeksy filtrów w PrestaShop?
Moduł sam zaleca regularne zadania cron uruchamiane codziennie albo co tydzień, a przy indeksie cen podpowiada przebudowę nocną. W sklepie, w którym ceny i stany zmieniają się codziennie, ustaw przebudowę cen co noc. Po dużym imporcie produktów uruchom indeksowanie ręcznie, nie czekając na harmonogram.
Czy filtry PrestaShop działają na stronie wyników wyszukiwania?
Szablon filtrów można przypisać do strony Search, obok kategorii, marek i dostawców. W wersji 3.16 modułu ta strona jest oznaczona jako eksperymentalna, a jedno z późniejszych wydań poprawia na niej kolejność produktów. Filtry zawężają jednak tylko to, co wyszukiwarka znalazła, więc nie naprawią słabych wyników.
Czy blokować adresy z filtrami w pliku robots.txt?
Jeśli nie zależy Ci na tym, żeby strony z filtrami pojawiały się w Google, to tak: dokumentacja Google wymienia blokadę w robots.txt jako jeden z dwóch podstawowych sposobów ograniczenia skanowania takich adresów. Najpierw sprawdź w Search Console, czy te strony nie przynoszą ruchu.
Czym różni się cecha od atrybutu w filtrach PrestaShop?
Atrybut tworzy kombinację, czyli wariant, który klient wybiera przy zakupie, na przykład rozmiar albo kolor. Cecha tylko opisuje produkt, na przykład materiał albo moc silnika. Oba rodzaje danych mogą być filtrami, ale trafiają do nich wyłącznie wtedy, gdy są przypisane do produktów i zaindeksowane.
Źródła
- Repozytorium modułu ps_facetedsearch (opis i wymagania) (sprawdzono 10 listopada 2026)
- Historia wydań modułu ps_facetedsearch (sprawdzono 10 listopada 2026)
- Kod modułu ps_facetedsearch 3.16.1: ekran konfiguracji (manage.tpl) (sprawdzono 10 listopada 2026)
- Kod modułu ps_facetedsearch 3.16.1: główny plik modułu (sprawdzono 10 listopada 2026)
- Kod modułu ps_facetedsearch: formularz szablonu filtrów (add.tpl) (sprawdzono 10 listopada 2026)
- Kod modułu ps_facetedsearch: zapis filtrów w adresie (URLSerializer) (sprawdzono 10 listopada 2026)
- Specyfikacja modułu ps_facetedsearch dla PrestaShop 1.7 (sprawdzono 10 listopada 2026)
- Dokumentacja deweloperska PrestaShop 8: jak działa moduł Faceted search (sprawdzono 10 listopada 2026)
- Google Search Central: zarządzanie skanowaniem adresów URL nawigacji fasetowej (sprawdzono 10 listopada 2026)
- Kod PrestaShop 8.1.7: domyślne reguły robots.txt (classes/Tools.php) (sprawdzono 10 listopada 2026)
- Kod PrestaShop 8.1.7: listy produktów i parametr q (ProductListingFrontController) (sprawdzono 10 listopada 2026)
- Dokumentacja PrestaShop 8: SEO i adresy URL (generowanie robots.txt) (sprawdzono 10 listopada 2026)
O autorze
Zespół Searchkeen
Budujemy wyszukiwarkę produktów dla polskich sklepów internetowych. Na blogu opisujemy to, czym zajmujemy się na co dzień: jak klienci szukają produktów, dlaczego ich nie znajdują i co zrobić, żeby znajdowali.


