Przejdź do głównej zawartości

Jak to działa

Locator zamienia zbiór wpisów lokalizacji w przeszukiwalny, dostępny katalog. Ta strona wyjaśnia, jak się renderuje i jak korzystają z niego klienci.

Gdy strona zawiera shortcode [locator], Locator pobiera każdą opublikowaną lokalizację i renderuje je jako karty wprost w HTML — jako listę lub responsywną siatkę, zależnie od ustawienia lub atrybutu layout. Ponieważ karty są w stronie od początku, katalog działa nawet przy wyłączonym JavaScript, a wyszukiwarki widzą pełną treść.

Gdy JavaScript jest dostępny, nad kartami pojawia się pole wyszukiwania. W miarę pisania Locator filtruje karty już obecne na stronie po:

  • mieście,
  • kodzie pocztowym lub
  • nazwie sklepu.

Nie jest wysyłane żadne zapytanie i żadne dane nie opuszczają strony — filtrowanie odbywa się wyłącznie w przeglądarce, więc jest natychmiastowe nawet przy wielu sklepach. Liczba wyników jest ogłaszana przez region ARIA live, więc użytkownicy czytników ekranu słyszą, ile sklepów pasuje.

Karta pokazuje pola włączone w ustawieniach: adres, godziny otwarcia, telefon, e-mail i link Wyznacz trasę. Telefon i e-mail renderują się jako linki click-to-call i mailto. Wyznacz trasę otwiera aplikację map gościa po współrzędnych sklepu lub po adresie pocztowym, gdy współrzędnych brak.

Locator jest dostępny od podstaw:

  • liczba wyników korzysta z regionu ARIA live,
  • katalog obsługuje klawiaturę z widocznymi stylami focus,
  • tekst wyłącznie dla czytników ekranu opisuje wyszukiwanie i wyniki oraz
  • respektuje prefers-reduced-motion.

Style panelu i sklepu są też świadome trybu ciemnego.

Aby dostosować znaczniki karty, skopiuj szablon do swojego motywu:

templates/locator-list.php → your-theme/locator/locator-list.php

Kopia w motywie ma pierwszeństwo, więc możesz przebudować karty bez ruszania wtyczki i bez utraty zmian przy aktualizacji.

Locator ładuje swoje zasoby tylko na stronach zawierających shortcode i renderuje się bez przeskoków układu. Brak zewnętrznego API, klucza map i śledzenia utrzymuje niewielkie zarówno wagę strony, jak i powierzchnię prywatności.