Rufen Sie die URL der Blogseite unter Optionen auf

Ich habe festgelegt, dass der Blog eine andere Seite als die Startseite sein soll.

Ich möchte einen Link von single.php zu dieser Blogseite haben.

Gibt es eine function, die die URL für das Blog herausholt?

Solutions Collecting From Web of "Rufen Sie die URL der Blogseite unter Optionen auf"

Um auf die Antwort von Sagive aufzubauen, sollten Sie die ID in get_permalink () einfügen, um den tatsächlichen Link zu erhalten.

Our Blog 

Ab WordPress 4.5 können Sie verwenden:

 get_post_type_archive_link( 'post' ); 

Dadurch wird sichergestellt, dass die richtige URL abgerufen wird, unabhängig davon, ob Posts auf der Startseite oder auf einer angegebenen Seite angezeigt werden.

Sie können get_option von page_for_posts , um die Seiten-ID dazu zu bekommen, sie entweder einer Variablen zuzuweisen oder sie zu page_for_posts , wenn Sie dies wünschen.

 < ?php $postsPageId = get_option('page_for_posts'); ?> Our Blog 

Für weitere Informationen über die default get_option besuchen Sie: Option Referenz

Die beste Möglichkeit, die Option vor dem Festlegen des Permalinks zu überprüfen, ist wie folgt:

 if ( get_option( 'page_for_posts' ) ) { echo ''.esc_html__( 'Blog', 'textdomain' ).''; } else { echo ''.esc_html__( 'Blog', 'textdomain' ).''; } 

Vereinbaren Sie mit dem Hugh Man, dass es besser ist, die Option zu prüfen, bevor Sie den Link wiederholen, aber es ist möglich, die statische Seite als Startseite festzulegen und die Posts-Seite leer zu lassen. In diesem Fall zeigt der Link nur auf die Home-URL. Ein besserer Ansatz besteht darin, einen Fallback für die Archivseite des Posts bereitzustellen. Etwas wie das:

 function slug_all_posts_link() { if ( 'page' == get_option( 'show_on_front' ) ) { if ( get_option( 'page_for_posts' ) ) { echo esc_url( get_permalink( get_option( 'page_for_posts' ) ) ); } else { echo esc_url( home_url( '/?post_type=post' ) ); } } else { echo esc_url( home_url( '/' ) ); } }