ModKor Improved Layered Navigation
Multi-select filters · instant soft navigation · price slider · swatches · natural-language filter bar — for Magento 2 + Hyvä
The bar above mirrors what the module does on a real store: filters build core-compatible URLs (multi-values joined with _), and the results swap in without a page reload — the timing shown is the real swap time in this demo.
The storefront, simulated
This is a working model of a category page with the module enabled. Tick several values of one attribute (OR within, AND across), drag the price slider, type a plain-English phrase, or filter yourself into a corner to see the zero-results rescue.
Colour
Type
Dietary
Price
What just happened to the URL
No custom router, no hijacked rewrites — the module produces the same query-string URLs core Magento uses, so caches, sitemaps and other modules keep working. Multiple values of one attribute join with an underscore.
| Shopper action | URL the module builds |
|---|---|
| Colour: Red | /gift-boxes.html?color=12 |
| Colour: Red and Blue | /gift-boxes.html?color=12_15 |
| + Type: Sampler · Price $20–60 | /gift-boxes.html?color=12_15&type=31&price=20-60 |
| Natural language: “vegan boxes under $50” | /gift-boxes.html?diet=44&price=0-50 |
Why it beats the usual suspects
| Capability | Stock Magento | Typical “improved nav” extension | ModKor ShopBy |
|---|---|---|---|
| Multi-select per attribute | No | Yes | Yes |
| No-reload filtering | No | AJAX + jQuery widget stack | fetch + View Transitions, zero jQuery |
| Prefetch on hover/touch | No | No | Yes |
| Natural-language filter bar | No | No | Yes — on-server, no API fees |
| Zero-results rescue | No | No | Yes |
| Hyvä-first | — | Often a paid add-on | Native (Alpine + Tailwind) |
| Core-compatible URLs | Yes | Sometimes custom routes | Yes |