Hierarchia szablonów motywu blokowego WordPress
Pełna hierarchia szablonów motywu blokowego (FSE): dla każdego typu żądania uporządkowana lista szablonów, których szuka WordPress — od najbardziej szczegółowego, z awaryjnym powrotem do index.html. Odpowiednik klasycznego diagramu hierarchii w erze bloków.
Dla każdego żądania WordPress szuka tych szablonów w kolejności — najpierw najbardziej szczegółowych — i zatrzymuje się na pierwszym, który istnieje w folderze /templates Twojego motywu. Łańcuch zawsze kończy się na index.html.
Strona główna
Strona główna witryny, niezależnie od tego, czy wyświetla najnowsze wpisy, czy stronę statyczną.
- front-page.html
- home.html
- index.html
front-page.html ma pierwszeństwo niezależnie od ustawienia w Ustawienia → Czytanie. Jeśli stroną główną jest strona statyczna i nie ma pliku front-page.html, obsługę przejmuje łańcuch strony statycznej, a nie home.html.
Strona wpisów bloga
Strona wyświetlająca najnowsze wpisy (czyli „strona wpisów” w Ustawienia → Czytanie).
- home.html
- index.html
Pojedynczy wpis
Pojedynczy wpis bloga.
- single-post-{slug}.html
- single-post.html
- single.html
- singular.html
- index.html
Pojedynczy wpis własnego typu treści
Pojedynczy wpis własnego typu treści (np. „książka”).
- single-{post-type}-{slug}.html
- single-{post-type}.html
- single.html
- singular.html
- index.html
Dla typu treści „book” o slugu „dune”: single-book-dune.html, następnie single-book.html, następnie single.html.
Strona statyczna
Zwykła strona WordPress.
- page-{slug}.html
- page-{id}.html
- page.html
- singular.html
- index.html
Strona z własnym szablonem
Strona z przypisanym własnym szablonem w panelu Szablon w edytorze.
- {custom-template}.html
- page-{slug}.html
- page-{id}.html
- page.html
- singular.html
- index.html
Własne szablony deklaruje się w tablicy customTemplates w theme.json i przechowuje w katalogu /templates. Przypisany szablon ma pierwszeństwo przed całym łańcuchem strony.
Archiwum kategorii
Archiwum wyświetlające wpisy z jednej kategorii.
- category-{slug}.html
- category-{id}.html
- category.html
- archive.html
- index.html
Archiwum tagu
Archiwum wyświetlające wpisy z jednym tagiem.
- tag-{slug}.html
- tag-{id}.html
- tag.html
- archive.html
- index.html
Archiwum własnej taksonomii
Archiwum dla terminu we własnej taksonomii.
- taxonomy-{taxonomy}-{term}.html
- taxonomy-{taxonomy}.html
- taxonomy.html
- archive.html
- index.html
Archiwum autora
Archiwum wpisów jednego autora.
- author-{nicename}.html
- author-{id}.html
- author.html
- archive.html
- index.html
Archiwum według daty
Archiwum roczne / miesięczne / dzienne.
- date.html
- archive.html
- index.html
Archiwum typu treści
Strona archiwum własnego typu treści, który ma ustawione has_archive.
- archive-{post-type}.html
- archive.html
- index.html
Wyniki wyszukiwania
Strona wyników wyszukiwania w witrynie.
- search.html
- index.html
404 (nie znaleziono)
Wyświetlana, gdy żadna treść nie pasuje do adresu URL.
- 404.html
- index.html
Strona załącznika
Strona pojedynczego załącznika multimedialnego.
- attachment.html
- single.html
- singular.html
- index.html
Wiele witryn całkowicie wyłącza strony załączników (to uboga treść). Jeśli je zachowujesz, oto łańcuch szablonów.
Strona polityki prywatności
Strona ustawiona w Ustawieniach jako polityka prywatności witryny.
- page-privacy-policy.html
- privacy-policy.html
- page.html
- singular.html
- index.html
Czym różni się to od klasycznej hierarchii (PHP)
- Szablony to pliki .html w katalogu /templates, a nie pliki .php w katalogu głównym motywu. Nie ma pliku single.php — jest single.html.
- Wielokrotnie używane obszary (nagłówek, stopka) to CZĘŚCI szablonów w katalogu /parts, dołączane blokiem wp:template-part, a nie wywołaniami PHP get_header() / get_footer().
- Nie ma łańcucha get_template_part() ani get_header()/get_footer(). Kompozycję buduje się blokiem Część szablonu wewnątrz plików .html.
- index.html jest WYMAGANY. block theme bez pliku templates/index.html nie jest prawidłowym block theme — to obowiązkowy, ostateczny fallback dla każdej z powyższych ścieżek.
- Motyw jest uznawany za block theme dzięki OBECNOŚCI pliku templates/index.html oraz theme.json, a nie za sprawą jakiejkolwiek flagi w nagłówku.
- Każdy z tych szablonów możesz edytować w Edytorze witryny (Wygląd → Edytor) i zapisać zmiany w bazie danych — które wtedy NADPISUJĄ pliki motywu, dopóki nie wyczyścisz personalizacji. To zaskakuje osoby próbujące rozgryźć „dlaczego moja zmiana w szablonie nic nie robi”.