it-swarm.com.de

Durchlaufen des WP_Post-Objekts

Ich habe ein benutzerdefiniertes WordPress-Post-Array, das so aussieht:

Array ( 
[1] => Array ( 
    [sno] => 1 
    [post] => WP_Post Object ( 
        [ID] => 1452 
        [post_author] => 12 
        [post_date] => 2017-06-04 18:09:47 
        [post_date_gmt] => 2017-06-05 01:09:47 
        [post_content] => Content here 
        [post_title] => Title here 
        [post_excerpt] => 
        [post_status] => publish 
        [comment_status] => open 
        [ping_status] => closed 
        [post_password] => 
        [post_name] => title-here 
        [to_ping] => 
        [pinged] => 
        [post_modified] => 2017-07-14 09:35:35 
        [post_modified_gmt] => 2017-07-14 16:35:35 
        [post_content_filtered] => 
        [post_parent] => 0 
        [guid] => https://urlhere.com&p=1452 
        [menu_order] => 0 
        [post_type] => sfwd-lessons 
        [post_mime_type] => 
        [comment_count] => 0 
        [filter] => raw 
    ) 
    [permalink] => https://urlhere.com/ 
    [sub_title] => 
    [status] => notcompleted 
    [sample] => is_not_sample 
    [lesson_access_from] => 
    )
)   

Ich versuche, die Pfosten in diesem Array mit dieser Logik zu durchlaufen. Wenn 'status' gleich 'finished' ist, werden Titel und Link des Beitrags ausgegeben. Ich denke, eine grundlegende foreach-Schleife sollte funktionieren, aber sie scheint nicht zu funktionieren. Das Array wird folgendermaßen erstellt:

$lessons = learndash_get_course_lessons_list( $course_id );

Meine foreach-Schleife sieht folgendermaßen aus:

foreach ($lessons as $key => $lesson) {
  echo $lesson["post_title"];
}

Dies gibt jedoch nichts zurück. Was muss ich tun, um die Array-Daten zu durchlaufen?

1
Andrew

Anhand Ihrer Angaben zum Abschluss eines Beitrags können Sie überprüfen, ob sein Status completed lautet. Wenn ja, zeigen Sie auf den Titel:

foreach ( $lessons as $lesson ){
    if( $lesson['status'] == 'completed' ){
        echo $lesson['post']->post_title;
    }
}
2
Jack Johansson