Den här artikeln visar WordPress-temaförlängningshierarkin. Kortfattat tittar vi på vilka filer som får delas upp när du laddar en sida i WordPress. Du kanske redan vet att detaljposten serveras av single.php, och detaljsidan serveras av page.php, men WordPress söker efter olika filer beroende på olika faktorer, så vi tittar på hur det fungerar!
Det första vi bör etablera är detta: utan index.php och style.css ditt tema är inte längre ett giltigt WordPress-tema ... så det står för att om allt du har är de två filerna, kommer varje sida du försöker ladda att serveras upp av index.php. Ta en snabb titt på detta "cheatsheet" för att se vad jag hänvisar till:
Observera att flödet för varje sidtyp kommer att sluta med index.php. Det är därför som index.php krävs för WordPress-temat. Om vi saknar några andra filer i WordPress-temat (till exempel om det inte finns någon "search.php" -fil som ingår i temat), kommer index.php att visas istället.
Låt oss nu titta på några detaljer om exekveringsordern. Jag ska visa dig flödet där WordPress söker efter filer i din aktiva temapapp. Jag hoppas att det här kommer att vara användbart när du skapar ett WordPress-tema från och med nu:
Jag kommer att gå igenom varje typ av filer en efter en och kommer att visa exekveringshierarkin för samma.
Detta är den första och viktigaste sidan på vilken webbplats som helst. Så WordPress har gjort det möjligt att anpassa sidan. Låt oss ta en titt på filhierarkin för hemsidan.
När du serverar hemsidan, kommer WordPress att söka efter frontpage.php. Om det inte hittas kommer det att använda home.php. Om home.php existerar, kommer det att använda det. Om inte, kommer det helt enkelt att använda index.php.
WordPress kan ha så många posttyper som vi behöver. Så det blir lättare att få olika design för alla / vissa posttyper. Som standard är posten huvud- och standardposttypen för WordPress.
Så till exempel om din anpassade posttyp är produkt då blir det enkel product.php
För mer information om hur man lägger till nya posttyper i WordPress kan du se den här länken.
Precis som med posttyper kan vi ha en annan sidlayout med hjälp av den anpassade sidmallen. Så WordPress första sökningar efter filerna på den valda sidmallen (om den existerar).
Om ingen hittas kommer den att söka efter filen med slugen på den aktuella sidan. I grund och botten, om slugen är om oss, då söker den efter filen page-aboutus.php i aktiv temamapp.
WordPress söker efter filerna med ID precis som att söka efter filerna med slug.
Från ovanstående flöde kan du förstå att du kan ha olika mallar som används för kategorisidan. Du kan till exempel ha en anpassad sida baserad på slug och id, och använd sedan en standard "category.php" -fil för resten av dina kategorier ...
Detta kommer att bli samma sak som kategorin. Du kan ha olika sidor för taggslak och tagg ID också.
Här går den olika filhierarkin för taxonominsidor.
Här kommer du att veta att du kan ha olika mönster baserat på användarna också. Samma som kategori och taggar kan vi ha olika filer baserade på slug och ID för användaren.
Här kan du se att du kan ha olika sidlayout för olika typer av bilagor. Dessa kan skilja sig från mime-typen av den bifogade filen.
För datumspecifik layout kan vi skapa date.php i tematmappen. Då går flödet till archive.php och sedan till sist index.php.
När vi kommer nedåt till typen av filer, minskas antalet filer i hierarkin. Så det här är det grundläggande eller vi kan säga mest använda filer i alla WordPress-teman.
Du kan anpassa ditt sökresultat med search.php först. Om search.php inte är tillgänglig kommer index.php att visas.
När det gäller sidan eller inlägget som inte hittats, söker WordPress efter 404.php, om det inte hittas kommer det att fungera index.php.
Du kan självklart använda denna information på ett stort antal sätt att ladda upp egna mallar för olika sidor ... I många fall kan du, även om du använder ett befintligt tema, få en anpassad lösning utan att ändra de befintliga filerna. Du behöver bara skapa en ny fil och ge den ett nytt namn med hjälp av informationen ovan.
Dela dina tankar och eventuella ytterligare filer som kan inkluderas ovanför hierarkin.