Wie man den Titel der Blog-Homepage ausgibt

Ich verwende eine statische Startseite und eine Seite für meine Blogposts. In meiner header.php möchte ich den Titel der ausgewählten Seite meiner Blogposts anzeigen.

Beispielsweise:

<?php if( is_home() ) echo '

' . get_the_title() . '

'; ?>

Aber natürlich gibt get_the_title() das erste Element der angezeigten Posts und nicht der Seite selbst zurück.

Wie kann ich den Titel der zugewiesenen Homepage anzeigen?

Solutions Collecting From Web of "Wie man den Titel der Blog-Homepage ausgibt"

Sie können das abgefragte Objekt verwenden, um den Titel der Seite zurückzugeben, die als Blogseite verwendet wird

Du kannst folgendes benutzen: ( Erfordert PHP 5.4+ )

 $title = get_queried_object()->post_title; var_dump( $title ); 

Sie können die ID aus Optionen abrufen und dann den Titel mit dieser ID wiedergeben.

 // Blog Page $page_for_posts_id = get_option( 'page_for_posts' ); echo get_the_title($page_for_posts_id); // Front Page $frontpage_id = get_option('page_on_front'); echo get_the_title($frontpage_id); 

Ein Hinweis für diejenigen, die daran denken, @ pieters Lösung in index.php – On index.php zu verwenden, sollten Sie überprüfen, ob eine statische Seite so eingestellt ist, dass die Beiträge unter Einstellungen> Lesen angezeigt werden. Die Bedingung is_home() funktioniert nicht mit index.php. Sie müssen also prüfen, ob die Option gesetzt ist:

 < ?php // See if "posts page" is set in Settings > Reading $page_for_posts = get_option( 'page_for_posts' ); if ($page_for_posts) { ?>  < ?php } ?> 

Diese Überprüfung ist wichtig, da index.php auch aufgerufen wird, wenn “Front Page Displays> Ihre letzten Posts” eingestellt ist. In diesem Fall get_queried_object()->post_title; gibt einen Objekt-nicht-gefunden-Fehler zurück.

Wenn es nur um die Homepage-Kachel geht, warum codierst du dann nicht den Titel?

 < ?php if ( is_home() ) : ?> 

Your blog posts page title

< ?php endif; ?>