Okruszki Pro: kompletny przewodnik
Instalacja, konfiguracja rozwijanych menu, strategie ścieżki wielokategoriowej i JSON-LD BreadcrumbList modułu Okruszki Pro.
Okruszki Pro (dfbreadcrumbpro) zastępuje podstawową ścieżkę nawigacyjną Twojego motywu wzbogaconą nawigacją: rozwijane menu kategorii siostrzanych na każdym poziomie, dane strukturalne JSON-LD BreadcrumbList zgodne z wytycznymi Google oraz inteligentna ścieżka dla produktów należących do kilku kategorii.
Instalacja
- Przejdź do Moduły > Menedżer modułów > Zainstaluj moduł.
- Wgraj archiwum
dfbreadcrumbpro.zipi kliknij Zainstaluj. - Moduł automatycznie rejestruje się na hookach
displayHeader,displayWrapperTopiactionFrontControllerSetMedia. Żadne dodatkowe działanie nie jest potrzebne.
Moduł nie tworzy żadnej tabeli SQL i nie wykonuje żadnego override: deinstalacja po prostu usuwa jego klucze konfiguracji.
Kompatybilność: PrestaShop 8.0 do 9.x, PHP 7.4 do 8.3, multisklep i wielojęzyczność.
Konfiguracja
Otwórz Moduły > Menedżer modułów, wyszukaj „Okruszki Pro” i kliknij Konfiguruj. Dostępne są następujące opcje:
- Zastąp okruszki motywu (włączone domyślnie): ukrywa w CSS ścieżkę renderowaną przez motyw (klasy
.breadcrumbi.breadcrumb-wrapper), aby uniknąć wizualnego duplikatu. - Włącz rozwijane menu (włączone domyślnie): pokazuje kategorie siostrzane w rozwijanym menu na każdym poziomie ścieżki.
- Pokaż podkategorie na ostatnim poziomie (wyłączone domyślnie): na stronach kategorii ostatnie menu wymienia podkategorie bieżącej kategorii zamiast jej kategorii siostrzanych. Jeśli kategoria nie ma dzieci, moduł automatycznie wraca do kategorii siostrzanych.
- Strategia ścieżki dla produktów: patrz dedykowana sekcja poniżej.
- Włącz JSON-LD BreadcrumbList (włączone domyślnie): wstrzykuje dane strukturalne schema.org do znacznika head.
- Pokaż link Strona główna (włączone domyślnie): pierwszy element ścieżki wskazujący stronę główną.
- Separator: znak wyświetlany między poziomami (domyślnie
›, maksymalnie 8 znaków). - Maksymalna liczba elementów per menu: limit kategorii wymienianych w każdym rozwijanym menu (domyślnie 15, od 1 do 50).
Strategie ścieżki produktu
Gdy produkt należy do kilku kategorii, moduł musi wybrać, którą ścieżkę wyświetlić. Proponowane są trzy strategie:
Kategoria domyślna
Ścieżka używa kategorii domyślnej produktu (id_category_default), czyli klasycznego zachowania PrestaShop. Jeśli ta kategoria jest wyłączona lub niepowiązana z bieżącym sklepem, moduł automatycznie przechodzi na kategorię najgłębszą.
Kategoria najgłębsza
Ścieżka używa najgłębszej aktywnej kategorii (największy level_depth) spośród kategorii produktu. To najbardziej specyficzna ścieżka, zwykle najkorzystniejsza dla SEO, bo maksymalizuje liczbę poziomów i słów kluczowych w ścieżce oraz w JSON-LD.
Kontekstowa (zalecana, domyślna)
Moduł zapamiętuje ostatnią kategorię odwiedzoną przez klienta w cookie (dfbcp_last_cat). Na karcie produktu, jeśli produkt należy do tej kategorii, ścieżka pokazuje tę drogę: nawigacja odzwierciedla rzeczywistą trasę odwiedzającego. W przeciwnym razie moduł przechodzi na kategorię najgłębszą.
Tryb kontekstowy opiera się na cookie odwiedzającego. Jeśli sklep stoi za bardzo agresywnym cache pełnostronicowym (Varnish bez wariacji po cookies, CDN w trybie pełnego cache), cookie może zostać zignorowane: wybierz wtedy strategię „Kategoria najgłębsza”.
Rozwijane menu
Każdy poziom ścieżki odpowiadający kategorii wyświetla przycisk caret. Zachowanie:
- Desktop: otwieranie po najechaniu na poziom lub kliknięciu careta.
- Mobile: otwieranie po tapnięciu careta, ścieżka przewijana poziomo na małych ekranach.
- Zamykanie: kliknięcie poza ścieżką lub klawisz Escape.
- Dostępność: atrybuty
aria-haspopup,aria-expandediaria-current, pełna nawigacja klawiaturą. - Ochrona przed wychodzeniem poza ekran: menu automatycznie zmieniają pozycję, aby nigdy nie wyjść poza ekran.
Listy kategorii siostrzanych są cache’owane per żądanie i respektują bieżący język oraz sklep. Aktywna kategoria jest wyróżniona w menu.
JSON-LD BreadcrumbList
Moduł wstrzykuje do znacznika head skrypt application/ld+json typu BreadcrumbList:
- pozycje numerowane od 1;
- nazwa i URL dla każdego poziomu;
- ostatni element (bieżąca strona) celowo bez URL, zgodnie z rekomendacjami Google;
- nigdy nie emitowany, gdy ścieżka ma mniej niż dwa poziomy.
Poprawność znaczników możesz sprawdzić testem wyników rozszerzonych Google.
Jeśli Twój motyw generuje już własny JSON-LD BreadcrumbList, oba znaczniki będą współistnieć, a Search Console może zgłaszać duplikaty. Wyłącz albo znacznik motywu, albo opcję JSON-LD modułu.
Pokrywane strony
- Kategorie: pełna ścieżka od korzenia katalogu.
- Karty produktów: ścieżka kategorii według wybranej strategii, produkt jako ostatni poziom.
- Strony CMS: drzewo kategorii CMS, a następnie tytuł strony.
- Marki i dostawcy: strona listy, potem strona szczegółowa.
- Pozostałe strony (kontakt, promocje, mapa strony itd.): generyczny fallback na meta tytuł strony.
- Strona główna: żadna ścieżka nie jest wyświetlana.
Multisklep i wielojęzyczność
Wszystkie zapytania SQL respektują powiązania bieżącego sklepu (kontekst multisklepu) oraz język odwiedzającego: nazwy kategorii, przepisane adresy URL i etykiety są rozwiązywane we właściwym języku. Francuskie tłumaczenie zaplecza jest dołączone; pozostałe języki tłumaczy się przez Międzynarodowy > Tłumaczenia > Tłumaczenia zainstalowanych modułów.
Rozwiązywanie problemów
Ścieżka się nie wyświetla
Sprawdź, czy Twój motyw udostępnia hook displayWrapperTop (obecny w motywie Classic i niemal wszystkich motywach z rynku). Jeśli nie, podepnij moduł do równoważnego hooka wyświetlania przez Wygląd > Pozycje.
Pojawiają się dwie ścieżki nawigacyjne
Opcja „Zastąp okruszki motywu” jest wyłączona albo motyw używa niestandardowych klas CSS. Włącz opcję ponownie albo dodaj regułę CSS celującą w kontener ścieżki Twojego motywu.
Tryb kontekstowy zawsze pokazuje tę samą ścieżkę
Cache pełnostronicowy prawdopodobnie ignoruje cookie dfbcp_last_cat. Przełącz na strategię „Kategoria najgłębsza” albo wyklucz to cookie z klucza cache.
Rozwijane menu jest puste na jakimś poziomie
Kategoria nie ma aktywnej kategorii siostrzanej powiązanej z bieżącym sklepem: caret po prostu nie jest wtedy wyświetlany.
Po każdej zmianie konfiguracji pamiętaj o wyczyszczeniu cache PrestaShop (Zaawansowane > Wydajność), aby od razu zobaczyć zmiany na froncie.
Historia wersji
- 1.0.0 (16.07.2026): Pierwsza publikacja: rozwijane menu kategorii siostrzanych, JSON-LD BreadcrumbList, strategie domyślna / najgłębsza / kontekstowa, pokrycie kategorii, produktów, CMS, marek i dostawców, multisklep i wielojęzyczność.