The WordPress Template Hierarchy
WordPress-temaer giver dig mulighed for at ændre designet af dit websted og giver dig kontrol over udseendet og indtrykket. De er i bund og grund samlinger af forskellige skabelonfiler, der arbejder sammen og producerer det overordnede design af dit websted.
Hvor du dykker dybere ned i WordPress-temaer, er det vigtigt, at du har en forståelse af, hvordan WordPress fungerer, og hvordan de forskellige sider på dit websted oprettes. WordPress interagerer med en database for at gemme dit indhold. Det betyder, at når du opretter et nyt indlæg eller en ny side, lever indholdet af dit indlæg eller din side i en database, og det vises kun ved hjælp af skabeloner, når den besøgende beder om det pågældende indhold.
Et WordPress-tema er en samling af skabeloner (CSS- og PHP-filer), som WordPress bruger til at vise indholdet i databasen. WordPress leder efter filer i et tema, som skal bruges til at gengive den aktuelle side i en bestemt rækkefølge. Dette kaldes et “skabelonhierarki”, som bruges til at oprette og udvide WordPress-temaer.
WordPress-temaer bestemmer, hvordan dit indhold skal vises på dit websted. En skabelon i WordPress er en enkelt fil, der bestemmer, hvordan en bestemt side eller et sæt af sider skal se ud i frontenden af dit websted. Når du ændrer dit tema, ændrer du den måde, som indholdet vises på, uden at ændre selve indholdet.
WordPress-temaer bruger forskellige skabelonfiler til at generere en komplet webside. Når du f.eks. får adgang til et WordPress-websted, kan du faktisk se flere forskellige skabelonfiler, der kombineres sammen for at skabe en komplet side.
For eksempel, hvis du vil se på en indeksside, som forsiden af en blog, vil du normalt se en header skabt af header.php
-skabelonen, indhold skabt af index.php
, sidebar oprettet af sidebar.php
og sidefoden oprettet af footer.php
Hvis du tilgår en enkelt side, vil du dog stadig se den samme overskrift, den samme sidebar og den samme sidefod, men indholdet vil i stedet være oprettet af single.php
. Spørgsmålet er, hvordan du ved, hvilke af disse skabelonfiler der træder i kraft og på hvilket tidspunkt? Det er her, WordPress-skabelonhierarkiet kommer ind i billedet.
WordPress-skabelonhierarkiet bestemmer, i hvilken rækkefølge dine skabelonfiler indlæses i dit WordPress-tema. WordPress søger efter disse filer for at bestemme, hvordan dit websted skal indlæses.
Hvis du åbner temamappen ‘Twenty Fifteen’ (et af WordPress-temaerne som standard), er der mere end 15 skabelonfiler. Disse omfatter skabelonfiler til 404, arkiv, forfatter-bio, kommentarer og content-link for blot at nævne nogle få. WordPress bruger de Query String-oplysninger, der er indeholdt i hvert link på dit websted, til at afgøre, hvilken skabelon eller hvilket sæt af skabeloner der skal bruges til at vise siden.
WordPress afgør, hvilken type side (f.eks. søgeside, kategoriside eller forside) der anmodes om, og vælger derefter den passende skabelon, der foreslås af WordPress-skabelonhierarkiet, til at generere indholdet.
Navnekonvention
WordPress har en særlig og streng navnekonvention forbundet med temafiler, så alle temaer deler et ret almindeligt navngivet sæt af filer i backend’en. For nemt at administrere dit indhold kan du f.eks. oprette header.php
og footer.php
filer. Disse skabelonfiler skal have navnene header.php
og footer.php
.
WordPress leder efter skabelonfiler med bestemte navne i det aktuelle temas mappe for at bestemme, hvilken skabelon der skal bruges, oftest bruges den første matchende skabelonfil. Hvis WordPress ikke kan finde en skabelonfil med et matchende navn, springer den ned til det næste filnavn i hierarkiet. Hvis WordPress ikke kan finde nogen matchende skabelonfil, vil den bruge index.php (temaets hjemmesideskabelonfil).
Så når du redigerer skabelonfiler, skal du tænke på, hvilken type indhold det drejer sig om, og derefter redigere den relevante skabelonfil for den type indhold. Det samme gælder, når du opretter WordPress-temaer fra bunden.
Minimale krav til temaer
De eneste filer, der er nødvendige for, at et WordPress-tema kan fungere, er index.php
og style.css
. index.php
er den vigtigste og eneste fil, der vil behandle alle WordPress-forespørgsler samt webstedets struktur.
De minimale filer, der kræves for at et WordPress-tema kan fungere og være synlige i WordPress-dashboardet til aktivering, er index.php
og style.css
.
Hvis index.php
eller style.css
mangler, vil du se følgende fejl.
De følgende temaer er installeret, men er ufuldstændige. Temaer skal have et style-sheet og en skabelon.
-
style.css
(påkrævet) -
index.php
(påkrævet) -
functions.php
(valgfrit) -
screenshot.png
(valgfrit)
Denne adskillelse øger effektiviteten betydeligt. At samle det hele i én stor enkelt fil index.php
kan teknisk set måske fungere, men det ville ikke være kønt og ville give uendelige problemer senere hen. Desuden ville det være et mareridt at redigere et tema!
Her er en liste over de temafiler, der anerkendes af WordPress.
-
style.css
-
rtl.css
-
index.php
-
comments.php
-
front-page.php
-
single.php
-
page.php
-
author.php
-
archive.php
Der er også mange andre filer, du kan se listen over skabelonfiler for at få flere oplysninger.
Twenty Fifteen-skabelonhierarki Eksempel
Sæt, at du har aktiveret Twenty Fifteen-temaet, og en bruger besøger siden yoursite.com/author/tahir/
. Først vil WordPress søge efter skabelonen mærket author-tahir.php
, men author-tahir.php
er ikke tilgængelig. WordPress vil derefter søge efter author.php
, og hvis den heller ikke findes, vil den søge efter archive.php
. Denne fil er tilgængelig i Twenty Fifteen-temaet. Hvis du sletter eller omdøber archive.php
, vil WordPress bruge index.php
til at gengive siden.
Hver gang en bruger besøger dit websted, bevæger WordPress sig opad i skabelonhierarkiet, indtil den finder en skabelonfil, der passer. Dette har alt at gøre med, hvordan disse filer er navngivet.
Plugin’et ‘What The File’
For at finde ud af, hvilken fil og skabelon WordPress bruger til at vise det sideindhold, du i øjeblikket ser, kan du bruge det meget praktiske What The File-plugin. Dette er et gratis plugin udviklet af Barry Kooij.
Dette plugin tilføjer en indstilling til din værktøjslinje, der viser, hvilken fil og hvilke skabeloner der bruges. Jeg installerede ‘What The File Plugin’ til testformål på min lokale server og fandt ud af, at det fungerede godt.
For at teste, hvilke filer WordPress bruger, hvis en bestemt fil ikke er tilgængelig, omdøbte jeg to filer (i Twenty Fifteen-temaet). I skærmbilledet nedenfor kan du se, hvilke filer WordPress bruger til at vise indhold.
Du kan se, at Twenty Fifteen-temaet bruger filen content-search.php
til at vise søgeresultater. Hvis du sletter eller omdøber content-search.php
, bruger WordPress i stedet content.php
til at vise søgeresultater.
Plugin’et ‘What The File’ giver dig også mulighed for at klikke direkte på filnavnet for at redigere det via temaeditoren. Dette plugin kræver WordPress 3.1 eller højere, det fungerede fint med WordPress 4.1 også.