it-swarm.com.de

Wann ist is_home () vs is_front_page () zu verwenden?

Ich habe festgestellt, dass is_front_page bei der Anzeige der Startseite als wahr angezeigt wird und dort ein einzelner, selbstklebender Beitrag zugewiesen ist.

Es gibt auch true zurück, wenn ich über Einstellungen> Lesen eine Seite als statische Startseite zugewiesen habe.

Warum sollte ich jemals is_home() verwenden wollen?

63
N2Mystic

is_front_page() gibt true zurück, wenn sich der Benutzer auf der Seite oder der Seite der Beiträge befindet, die auf der Startseite unter Einstellungen -> Lesen -> Ihre Homepage angezeigt werden

Wenn Sie also about us als Startseite festlegen, ist diese Bedingung nur dann erfüllt, wenn die Seite about us angezeigt wird.

is_home() return true, wenn auf der Seite mit der Beitragsliste in der Regel die letzten 10 Beiträge angezeigt werden.

Wenn die Einstellungen unter Ihre Homepage zeigt standardmäßig beibehalten werden, wird die Homepage für is_front_page() und is_home() als true zurückgegeben.

Ein Beispiel für die Verwendung von is_home():

  • Sie haben Ihre Posts-Seite auf eine Seite mit dem Namen News gesetzt.
  • Ein Benutzer navigiert dorthin und in der Kopfzeile möchten Sie zusätzliche Navigation anzeigen
  • Sie können dazu is_home() verwenden.
62
Brady

Ich habe festgestellt, dass is_home() und is_front_page() nicht die erwarteten Ergebnisse für mehrere Standorte liefern. Meine Problemumgehung mit integrierten PHP Goodies:

if($_SERVER['REQUEST_URI'] == '/') {
    // you must be on the home page
}

Wie in den Kommentaren erwähnt, funktioniert dieser Ansatz nicht für WP Instanzen, die in Unterverzeichnissen des Webstamms installiert sind. Verwendung nach eigenem Ermessen.

3
Dylan Pierce

Sie möchten is_home() verwenden, um zu überprüfen, ob der Benutzer Ihre Liste der Blog-Beiträge anzeigt (normalerweise werden 10 Beiträge pro Seite angezeigt). Wenn Sie eine home.php-Datei in Ihrem Design haben, wird diese angezeigt, wenn die is_home()-Bedingung erfüllt ist.

Das Folgende kann möglicherweise auch Verwirrung stiften: Wenn is_front_page()- und is_home() -Zustände beide zutreffen, wird die Vorlage front-page.php anstelle von home.php verwendet.

1
Momekh