Przejdź do głównej zawartości

Wyszukiwanie predykcyjne

Sieve zawiera predykcyjne wyszukiwanie produktow: pole wyszukiwania, ktore pokazuje pasujace produkty na liscie rozwijanej w trakcie pisania. To osobny widget wzgledem filtra, wiec mozesz umiescic go gdziekolwiek - w naglowku, na stronie docelowej albo nad archiwum.

Uzyj shortcode:

[sieve_search]

Albo dodaj blok Sieve Search w edytorze. Oba renderuja to samo dostepne pole wyszukiwania.

AtrybutDomyslnieOpis
placeholderSearch productsTekst zastepczy w pustym polu.
buttonyesPokaz przycisk wysylania obok pola.
button_textSearchEtykieta przycisku wysylania.
limit6Maksymalna liczba podpowiedzi na liscie (1-20).
min_chars2Liczba znakow wymagana, zanim pojawia sie podpowiedzi (1-10).
in_stock_onlyyesOgranicz podpowiedzi do produktow dostepnych w magazynie.

Przyklad:

[sieve_search placeholder="Znajdz produkty…" limit="8" in_stock_only="no"]

W trakcie pisania Sieve pobiera dopasowania z publicznego endpointu REST i renderuje liste produktow z miniatura, nazwa, SKU i cena. Kazdy wynik prowadzi prosto do produktu, a link “zobacz wszystkie wyniki” otwiera pelna strone wyszukiwania.

Podpowiedzi opieraja sie na wbudowanym wyszukiwaniu produktow WooCommerce, wiec respektuja widocznosc katalogowa i pozostaja poprawne wraz z rozrostem katalogu. Skrypt wyszukiwania to maly, samodzielny pakiet: strony uzywajace tylko [sieve_search] nigdy nie laduja silnika filtra, co utrzymuje ich szybkosc.

Pole wyszukiwania stosuje wzorzec ARIA combobox:

  • Pole to combobox sterujacy lista listbox z opcjami.
  • Strzalka w dol / w gore przechodzi po podpowiedziach, Enter otwiera aktywna, Escape zamyka liste.
  • Aktywna opcja jest sledzona przez aria-activedescendant dla czytnikow ekranu.
  • Gdy JavaScript jest niedostepny, pole wysyla zapytanie do standardowego wyszukiwania produktow WooCommerce, wiec zawsze dziala.
  • Zapytania sa opozniane podczas pisania, a trwajace zapytanie jest anulowane, gdy pojawi sie nowy znak.
  • Miniatury laduja sie leniwie.
  • Brak przesuniec ukladu: lista jest pozycjonowana absolutnie i nie rezerwuje miejsca, dopoki sie nie otworzy.