it-swarm.com.de

Holen Sie sich Inhalte von der Blog-Seite

Ich habe eine Seite, die als "Blog" zugewiesen ist. Ich möchte dem Benutzer erlauben, Inhalte zu dieser Seite hinzuzufügen und diese dann anzuzeigen, bevor die Beiträge auf index.php angezeigt werden. Früher dachte ich, ich könnte es mit dieser Methode machen:

<?php 
    $blog = get_option('page_for_posts');
    echo apply_filters('the_content', get_the_content($blog)); 
?>

Aus irgendeinem Grund wird entschieden, den ersten Beitrag abzurufen, anstatt den Seiteninhalt tatsächlich abzurufen. Ist dies ein Fehler oder gibt es eine andere Methode, um den Inhalt der Blog-Seite abzurufen?

1
Howdy_McGee

Sie verwenden get_the_content() wrong, es kann keine ID annehmen, was von get_option('page_for_posts') zurückgegeben wird. Im Allgemeinen wird der Inhalt des aktuellen Posts in der Schleife abgerufen, in der er verwendet werden muss.

Um den tatsächlichen Inhalt dieser Seite zu erhalten, können Sie Folgendes tun:

$page_for_posts_id = get_option( 'page_for_posts' );
$page_for_posts_obj = get_post( $page_for_posts_id );
echo apply_filters( 'the_content', $page_for_posts_obj->post_content );

Oder:

$page_for_posts_id = get_option('page_for_posts');
echo get_post_field( 'post_content', $page_for_posts_id );
3
Nicolai