
WordPress ist ein ausgezeichnetes CMS. Sie können damit machen, was Sie wollen. Manchmal kann es jedoch vorkommen, dass bei einigen Grundfunktionen ein Problem auftritt. Beispielsweise verwenden Sie wahrscheinlich die is_front_page Und begrenzt Bedingte WordPress-Startseite in Ihren Themes und Plugins (mehr über bedingte Funktionen erfahren Sie in unserem Beitrag zu bedingten Tags). Aber du machst es falsch!
Startseiteneinstellungen
Mit diesen bedingten Funktionen können Sie überprüfen, ob die Startseite angezeigt wird (begrenzt), oder wenn die Homepage eine statische Seite verwendet (is_front_page). Sie können ein solches Verhalten in definieren Einstellungen=> Lesen.
In Ihrem Plugin oder Theme können Sie diese Funktionen nutzen, um Inhalte basierend auf Benutzereinstellungen anzuzeigen oder zu ändern. Aber Sie machen einen großen Fehler: Sie berücksichtigen die statische Blogseite nicht. Wenn Sie eine statische Seite für Ihre Homepage definieren, können Sie auch eine Blog-Seite definieren – diese ersetzt die Standard-WordPress-Homepage, auf der alle Beiträge aufgelistet sind.
Lange Geschichte in Kürze: is_front_page sollte immer mit und vorher getestet werden begrenzt. Und hier ist der Grund.
Wie funktioniert es
1. Normale Konfiguration:
Auf der Standard-WordPress-Startseite werden Ihre neuesten Beiträge aufgelistet.
- Hier ist die URL: website.com
- is_home gibt TRUE zurück
- is_front_page gibt TRUE zurück
Hier gibt es kein Problem.
2. Statische Homepage:
Die Startseite verwendet eine Ihrer statischen Seiten.
- Die URL lautet weiterhin website.com.
- is_home gibt FALSE zurück
- is_front_page gibt TRUE zurück
Mit Ihrer statischen Homepage gibt es kein Problem: is_front_page gibt true zurück.
3. Statische Blogseite
Eine seiner Seiten listet alle seine Beiträge auf.
- Die URL lautet website.com/pagename
- is_home: WAHR
- is_front_page: FALSCH
Hier könnten einige Probleme auftreten: begrenzt gibt TRUE zurück, aber dies ist nicht Ihre Homepage – es ist eine WordPress-Seite, die alle Beiträge auflistet, wie es ein Hauptkategoriearchiv tun würde.
Verwenden Sie bedingte Tags
Wenn Sie ein Plugin oder Theme erstellen, müssen Sie bedenken, dass Benutzer diese Seiteneinstellung verwenden können. Also jedes Mal, wenn Sie es verwenden begrenztDu solltest es immer versuchen is_front_page vorher, und Sie sollten dazu immer bedingte Parameter verwenden.
Wenn Sie dies nicht tun, kann es bei einigen Benutzern zu Problemen kommen. Zum Beispiel, wenn Sie nur testen begrenzt Um den Inhalt Ihrer Homepage anzuzeigen, kann es zu Problemen kommen, wenn auf der statischen Homepage nicht der richtige Inhalt angezeigt wird.
So machen Sie es richtig:
if ( is_front_page() && is_home() ) {
// Default homepage ( both the front page and the recent posts page)
} elseif ( is_front_page() ) {
// Static homepage
} elseif ( is_home() ) {
// Blog page
} else {
// Everything else
}
Dies ist die einzige (richtige) Möglichkeit, den Inhalt Ihrer Homepage und Blogseite anzuzeigen oder zu ändern.
Wichtig: Bitte beachten Sie, dass diese Funktionen erst funktionieren, wenn WordPress geladen wird, z. B. in Vorlagendateien oder bestimmten Aktions-Hooks. Sie können diese Bedingungen nicht einfach in „functions.php“ ablegen und erwarten, dass sie funktionieren.
Und du?
Ist Ihnen dieses Problem bereits begegnet? Was war Ihre Lösung? Ich möchte davon hören!
