24 08 10 Hierarchia ładownia plików motywu w Wordpresie
Motyw Wordpresa w teorii
Pliki motywu Wordpresa są ładowane w pewien specyficzny sposób. Jest on wynikiem przetworznenia danych wysłanych w zapytaniu do serwera ( lub ich częściowego lub całkowitego braku ). Innymi słowy, wszystko odbywa się na zasadzie rozbicia adresu URL, przetworznenia i znormalizowania danych konfiguracyjnych oraz stworzenia na ich podstawie odpowiedzi.
Szczegóły zapytania określane są we fragmencie adresu URL, który występuje po znaku zapytania ( nie biorę tu pod uwagę przypadku gdy URL jest przepisany za pomocą modułu rewrite Apache'a).
Mając powyższe dane, WordPress określa, które pliki spośród dostępnych w motywie zostaną użyte do wyświetlenia zawartości (oczywiście w wielkim uproszczeniu) . W kolejnym kroku pobierane są informacje o aktywnym motywie. W wyniku ich przetworznienia uruchomiony zostaje pierwszy plik, który odpowiada danym z adresu URL (np. page.php, index.php etc.) .
Odpowiedź na zapytanie w praktyce
Załóżmy, że wpisujemy w pasek adresu przeglądarki adres http://twoja.domena/ Co oznacza, że chcemy w odpowiedzi od serwera otrzymać stronę główną witryny.
W przedstawionej sytuacji, WordPress sprawdzi czy istnieje plik wp-content/aktywny_motyw/themes/home.php, jeżeli nie, to wyświetli zawartość z pomocą pliku wp-content/aktywny_motyw/themes/index.php.
Rozważmy inny, nieco bardziej skomplikowany przypadek, mianowicie, chcemy wyświetlić pojedyńczy wpis o ID = 22;
URL dla tego wpisu będzie wyglądał jak następuje: http://twoja_przykladowa_domena.pl/?p=22.
W odpowiedzi na tak skrojone zapytanie, WordPress poszuka pliku single-post.php, jeżeli nie znajdzie go w katalogu motywu, poszuka pliku single.php, jeżeli także i tego pliku nie znajdzie, zawartość wpisu zostanie wyświetlona z pomocą pliku index.php znajdującego się w katalogu motywu.
Rozważmy teraz przypadek, gdy chcemy wyświetlić stronę, dla której URL będzie wyglądał jak następuje:
http://twoja_przykladowa_domena.pl/?page_id=22 i będzie ona miała slug o_stronie.
Jeżeli stworzyliśmy własny szablon strony, np. w pliku o_stronie.php, wówczas WordPress użyje tego pliku do wyświetlenia zawartości. W przeciwnym wypadku skorzysta on z pliku o nazwie page-o_stronie.php. Jeżeli także i tego pliku nie uda się odnaleźć w katalogu motywów, plik page-22.php zostanie użyty. W przypadku braku tego ostatniego, poszukiwany będze plik page.php a w sytuacji jego braku zawartość strony zostanie wyświetlona z pomocą pliku index.php.
Podobne, aczkolwiek nie identyczne postępowanie ma miejsce w przypadku tagów, stron autorów, kategorii wpisów, załączników i archiwów wpisów.
Koniec końców, wszystko sprowadza się do pliku index.php, bo ten powienien mieć każdy motyw.
Pełna hierarchię plików motywu wordpressa i kolejność w jakich są one używane można prześledzić na stronie kodeksu Wordpessa.
Autor wpisu jest blogerem, programistą PHP, administratorem Linux oraz twórcą blogów
RSS Subskrybuj wpisy bloga