Ik “ben echt in de war met index.php
, home.php
en front-page.php
. In veel gevallen zelfs al had ik een index.php
, Ik overschrijf het met front-page.php
. Maar onlangs werd ik me bewust van home.php
.
- Wat “is het verschil tussen de
home.php
enindex.php
? - Wat is de ideale voorwaarde om een
home.php
dan eenindex.php
? - Wat is de ideale voorwaarde om een
front-page.php
? - Wanneer ik “gebruik een
front-page.php
, welke specifieke taak eenindex.php
doet voor mij dan?
Ik “heb de sjabloonhiërarchie in Codex gelezen. Meng mijn vraag niet met paginasjablonen, ik begrijp het “em, alHamduLILLAH.
Reacties
- Heb @rarst met dit: rarst.net/wordpress/front-page-logic . Kan je helpen.
Answer
Logica op de voorpagina is een van de meest verwarrende functies in WordPress en is uitzonderlijk moeilijk uit te leggen en samen te vatten. Zoals vermeld in de opmerking toen ik terug was, heb ik een onheilige hoeveelheid tijd verbrand om mijn logische spiekbriefje voor de voorpagina ervoor samen te stellen.
Maar sinds dit is een populaire thread, laat me proberen om die zeer specifieke vragen die u had te beantwoorden.
Wat is het verschil tussen de
home.php
enindex.php
?
home.php
is sjabloon voor berichtenindex (archief van native bericht-berichttype, wat een speciaal geval is in WP). WP zal proberen het op te zoeken voor de index van berichten, of ze nu in de root van de site of op een speciale berichtenpagina worden weergegeven. / p>
index.php
is een allesomvattend sjabloon. Het zijn de laatste keuzes in alle takken van de sjabloonhiërarchie en zullen worden gekozen wanneer niets anders past, zowel voor archieven als voor enkelvoudige weergaven.
Alleen de berichtenindex kan home.php
gebruiken, maar alle andere contexten kunnen en zullen .
Wat is de ideale voorwaarde om een
home.php
te gebruiken dan eenindex.php
Je gebruikt home.php
om de berichtenindex aan te passen.
U gebruikt index.php
om de meest algemene sjabloon in uw thema te bieden, geschikt voor weergave van alles.
Sommige themas kiezen ervoor om lege index.php
en zorg ervoor dat ze meer specifieke sjablonen hebben voor alle mogelijke gevallen, zodat het nooit gebruikt hoeft te worden.
Wat “is de ideale voorwaarde om een
front-page.php
te gebruiken?
front-page.php
wordt gebruikt voor het indexeren van berichten op de root of statische voorpagina, indien ingeschakeld.
Het is een sjabloon met hoge prioriteit, dus als het thema dit heeft, kunt u geen willekeurige sjabloon voor een statische voorpagina selecteren. Om deze reden wordt het bijna nooit opgenomen in openbaar vrijgegeven themas (wat correct is).
Het beste gebruik hiervoor is in privéprojecten, aangezien het gemakkelijker te configureren is dan paginasjablonen.
Wanneer ik “gebruik een
front-page.php
, welke specifieke taak eenindex.php
doet dan voor mij?
index.php
is nog steeds een catch-all-sjabloon voor alle andere gevallen.
Als je een statische voorpagina gebruikt (waarop front-page.php
van toepassing is), dan zal je berichtenpagina proberen en vervolgens index.php
.
Antwoord
De front-page.php
-bestand is de voorpagina van de site -sjabloon. Het wordt altijd gebruikt op de voorpagina van uw site, ongeacht of get_option( "show_on_front" )
is ingesteld op page
of posts
.
Het home.php
sjabloonbestand is de blogpostindex sjabloon. Het wordt altijd gebruikt om de index van uw blogposts weer te geven, ongeacht of de index van blogposts wordt weergegeven op de startpagina van de site of op een andere pagina.
In het geval dat beide front-page.php
en home.hpp
bestaan, en de get_option( "show_on_front" )
is ingesteld op posts
(dwz de voorpagina van de site geeft de index van blogberichten weer), het front-page.php
-bestand heeft voorrang op het home.php
-bestand.
Het index.php
-bestand is het standaard fallback-sjabloon voor alle contexten in de sjabloonhiërarchie . Het wordt alleen gebruikt als er geen specifieker sjabloonbestand bestaat voor de huidige context.
De sjabloonhiërarchie voor de voorpagina van de site is:
-
front-page.php
- Als
"page" == get_option( "show_on_front" )
: paginahiërarchie - Als
"posts" == get_option( "show_on_front" )
: blogposts indexhiërarchie
De sjabloonhiërarchie voor de blogposts index is:
-
home.php
-
index.php
De sjabloonhiërarchie voor paginas is:
- Aangepaste paginasjabloon
-
page-{slug}.php
-
page-{id}.php
-
page.php
-
index.php
Reacties
Antwoord
Dit alles komt voort uit een grondige lezing van de Sjabloonhiërarchie .
home.php
wordt gebruikt als:
- Uw site” s voorpagina is ingesteld om een lijst met berichten weer te geven, of
- Er is een statische voorpagina ingesteld , en
- Een bezoeker gaat naar de pagina die u “hebt gedefinieerd als uw” lijst met berichten “(bijv.
http://example.com/blog/
)
- En de thema heeft een
home.php
bestand
Als niet aan de laatste voorwaarde is voldaan, dwz er is geen home.php
bestand in het thema – dan wordt index.php
geladen.
front-page.php
zal worden gebruikt als :
- Een statische front p leeftijd is ingesteld , en
- Een bezoeker gaat naar de pagina die u “hebt gedefinieerd als uw” statische startpagina “(dwz
http://example.com/
) , en - Het thema heeft een
front-page.php
bestand
Als niet aan de laatste voorwaarde is voldaan, dat wil zeggen, er is geen front-page.php
bestand in het thema – dan wordt index.php
geladen.
Samengevat
Als je je lijst met berichten wilt aanpassen, gebruik dan home.php
.
Als je je statische startpagina wilt aanpassen, gebruik dan front-page.php
.
Reacties
-
home.php
worden gebruikt voor de blogpostsindex, ongeacht plaats. Als de voorpagina is ingesteld om de index van blogposts weer te geven, wordthome.php
gebruikt (alsfront-page.php
niet bestaat).
Antwoord
In het kort:
-
index.php
is alleen een fallback-sjabloon, voor het geval er geen geschikte sjabloon werd gevonden -
home.php
wordt gebruikt voor de blog (een lijst met recente berichten) -
front-page.php
wordt gebruikt voor de landingspagina
De universele index.php
sjabloon
Het index.php
sjabloonbestand is een fallback-sjabloon. Het wordt gebruikt als een laatste redmiddel wanneer er geen andere meer geschikte sjabloon beschikbaar is. Als u bijvoorbeeld “geen front-page.php
noch een home.php
heeft, dan zal index.php
worden gebruikt. Dit geldt ook voor ontbrekende archive.php
of single.php
enzovoort.
Met betrekking tot front-page.php
VS home.php
Nu het verschil tussen front-page.php
en home.php
-sjablonen is dat de front-page.php
wordt gebruikt, zoals de naam suggereert, als de hoofdpagina van de site, terwijl home.php
is bedoeld als de thuisbasis van de Blog sectie.
Welk sjabloon wordt gebruikt voor de landingspagina van mijn site?
Het front-page.php
sjabloon, indien aanwezig, zal worden gebruikt voor de hoofdpagina van de site (bijv. http://www.example.com/
). Indien niet aanwezig, wordt in plaats daarvan home.php
gebruikt. Als zowel de front-page.php
als sjabloonbestanden ontbreken, dan wordt de index.php
fallback-sjabloon gebruikt.
Welk sjabloon zal worden gebruikt voor mijn blogpagina?
WordPress stelt je in staat om een “Blog” -pagina (die recente berichten weergeeft) te hebben op een andere pagina dan de landingspagina (bijv. http://www.example.com/blog/
).Dus als dit het geval is op uw site, zal de blogpagina altijd het home.php
-sjabloon gebruiken. Als home.php
niet “bestaat, wordt de index.php
fallback-sjabloon gebruikt.
Hoe de landingspagina te configureren pagina en blogpagina?
Om te configureren welke inhoud op uw voorpagina moet worden weergegeven, gaat u naar de WordPress Admin , onder Tools> Lezen van , daar kun je de “ Front page displays ” configureren om toon een statische pagina, of je laatste berichten.
In het geval dat je ervoor kiest om een statische pagina op de voorpagina weer te geven, dan heb je ook de mogelijkheid om in te stellen welke pagina je wilt gebruiken als plaatshouder voor de blog pagina (die het home.php
-sjabloon gebruikt):
Answer
overgenomen uit WordPress-sjabloonhiërarchie
Weergave startpagina
Standaard stelt WordPress de startpagina van uw site zo in dat uw laatste blogberichten worden weergegeven. Deze pagina wordt de blogpostindex genoemd. U kunt uw blogberichten ook zo instellen dat ze op een aparte statische pagina worden weergegeven. Het sjabloonbestand home.php wordt gebruikt om de index van blogposts weer te geven, of deze nu wordt gebruikt als de voorpagina of op een afzonderlijke statische pagina. Als home.php niet bestaat, gebruikt WordPress index.php.
- home.php
- index.php
Opmerking: als front-page.php bestaat, zal het de home.php-sjabloon overschrijven.
Weergave voorpagina
Het sjabloonbestand front-page.php wordt gebruikt om de voorpagina van uw site weer te geven, ongeacht of de voorpagina de index van blogposts (hierboven vermeld) of een statische pagina weergeeft. De sjabloon voor de voorpagina heeft voorrang op de sjabloon voor de index van blogposts (home.php). Als het front-page.php-bestand niet bestaat, zal WordPress ofwel de home.php- of page.php-bestanden gebruiken, afhankelijk van de instellingen in Instellingen → Lezen. Als geen van deze bestanden bestaat, zal het het bestand index.php gebruiken.
1. front-page.php – Wordt gebruikt voor zowel “uw laatste berichten” als “een statische pagina” zoals ingesteld in het gedeelte Instellingen → Lezen op de voorpagina.
2. home.php – Als WordPress front-page.php niet kan vinden en “uw laatste berichten” is ingesteld op de voorpagina displays, zal het zoeken naar home.php. Bovendien zal WordPress naar dit bestand zoeken wanneer de berichtenpagina is ingesteld in het gedeelte met weergaven op de voorpagina.
3. page.php – Als “front page” is ingesteld in de voorpagina toont sectie.
4. index.php – Als “uw laatste berichten” is ingesteld op de voorpagina, wordt de sectie weergegeven maar home.php bestaat niet of als de voorpagina is ingesteld maar page.php bestaat niet .
Zoals je kunt zien, zijn er veel regels voor het pad dat WordPress volgt. Het gebruik van de bovenstaande grafiek is de beste manier om te bepalen wat WordPress zal weergeven.
Antwoord
Ik besloot te testen welk sjabloon wordt gebruikt voor elk van de volgende paginas als de verschillende opties voor de weergave van de voorpagina zijn ingesteld.
- example.net
- example.net/home/
- example.net/blog/
De resultaten zijn vrij lang, maar kunnen als referentie of spiekbriefje worden gebruikt.
Bron: Hoe front-page.php en home.php sjablonen verschillen in WordPress?
Noot voor redacteur: Ik heb geprobeerd de tabellen hier te kopiëren en te plakken, maar het markdown-formaat is vereist in plaats van HTML. Converteer indien mogelijk naar markdown.
my-template-1
-sjabloon te gebruiken wanneer de voorpagina is ingesteld op laatste berichten enmy-template-2
te gebruiken wanneer de voorkant is ingesteld op een statische pagina ( zonder codering)?