it-swarm.com.de

Probleme mit get_next_post () get_previous_post (), die null zurückgeben

Ich verwende wp als Engine, um Blog-Funktionen in eine vorhandene Site einzufügen. Ich habe eine Stelle auf der Blog-Seite, an der ich wp-load.php lade. Ich möchte den nächsten und den vorherigen Beitrag erhalten, aber wenn ich einen Beitrag von wpdb lade, geben sowohl get_next_post() als auch get_previous_post()NULL zurück. Was muss ich tun, damit diese Funktionen die richtigen Werte zurückgeben?

Bearbeiten Hier ist der Code:

if ( isset($_GET['article_id']) && is_numeric($_GET['article_id']) ) {

    $id = $_GET['article_id'];
    $objPost = get_post($id);

    new dBug(get_next_post());
    new dBug(get_previous_post());

}

dBug ist eine Klasse für hübsches Drucken. Derzeit gibt es zwei NULLs. Ich habe es versucht:

if ( isset($_GET['article_id']) && is_numeric($_GET['article_id']) ) {

    $id = $_GET['article_id'];
    $objPost = get_post($id);
    setup_postdata($objPost);
    new dBug(get_next_post());
    new dBug(get_previous_post());

} aber kein Glück. Immer noch NULL.

1
user1359

Sie müssen setup_postdata($post) aufrufen.

get_next_post () und get_previous_post () hängen von Anrufen bei einer Reihe von ab Eigenschaften in der globalen $ post-Variablen, die durch Aufrufen von setup_postdata($post) oder the_post() gefüllt wird. Wenn $ post leer ist, wird null zurückgegeben.

2
goldenapples