[ BLOG // 2026-07-18 // 2 MIN ]

Vylepšené vyhledávání v autodílech — filtry podle značky, skladové dostupnosti a ceny

Jak jsme sjednotili vyhledávání a katalog na J+P Autodíly: stejné filtry, stejné řazení, sdílená komponenta — a všechno v URL, takže odkaz na vyfiltrované výsledky můžeš poslat dál.

PROJEKTY nextjseshopautodilyuxvyhledavani

Hledání v autodílech je jiné než hledání v obyčejném eshopu. Uživatel nehledá podle názvu produktu — zadá kód dílu, model auta nebo prostě „brzdy na Fabii 2015”. Výsledky musí být přesné a zároveň prolezlé, protože jeden díl může mít deset variant podle výrobce.

A až donedávna to vypadalo tak, že vyhledávání a katalog byly dvě oddělené zkušenosti: každá s vlastním UI, vlastním řazením a vlastními filtry. Nebo bez nich.

Filtry na obou místech, jedna komponenta

Teď mají výsledky vyhledávání stejnou lištu filtrů jako katalog vozidel. Stejné komponenty, stejná logika. Můžeš filtrovat podle značky (Bosch, TRW, Febi…), přepnout jen na skladem položky a řadit podle ceny — od nejlevnějších nebo nejdražších.

Všechno jede přes URL parametry. Když najdeš sadu filtrů, která ti sedí, prostě zkopíruješ odkaz a pošleš ho kolegovi. Žádný „nastav si to stejně” — odkaz otevře přesně ta samá data.

/search?q=brzdy+Fabia&brand= Bosch&inStock=1&sort=price_asc

Co se muselo stát, aby to fungovalo

Klíčové rozhodnutí: nepsat novou filter komponentu. V katalogu už jsme měli ProductFilters — ten dostal novou schopnost řadit podle ceny, a na stránce vyhledávání jsme ho zapojili s prázdnými skupinami vozidel (ty v kontextu vyhledávání nedávají smysl).

Řazení cen funguje ve dvou režimech:

  • Přihlášený uživatel — bere vlastní smluvní cenu
  • Nepřihlášený — maloobchodní ceník

Položky s cenou „na dotaz” jsou vždy na konci seznamu, ať už řadíš jakkoli. Protože kdo potřebuje u řazení hledat, jestli ta cena je nebo není.

Vedlejší efekty

Cestou jsme opravili pár věcí, které by samy o sobě nestačily na článek, ale dohromady dělají vyhledávání použitelné:

  • Duplicitní vyhledávací pole — stránka výsledků měla vlastní search box kromě toho v hlavičce. Oba dělaly totéž, ale nebylo jasné, který výsledky řídí. Ten v results panelu zmizel.
  • Nativní select → Combobox — rozbalovací seznam pro řazení byl OS-nativní
// ALL_POSTS
ZPĚT NA BLOG