J'ai un tableau de publication WordPress personnalisé qui ressemble à ceci:
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] =>
)
)
J'essaie de parcourir les posts de ce tableau avec cette logique. Si 'status' est égal à 'terminé', le titre de la sortie et le lien du post. Je pense qu'une boucle foreach de base devrait fonctionner, mais elle ne semble pas fonctionner. Le tableau est créé comme ceci:
$lessons = learndash_get_course_lessons_list( $course_id );
Ma boucle foreach ressemble à ceci:
foreach ($lessons as $key => $lesson) {
echo $lesson["post_title"];
}
Cela ne retourne rien cependant. Que dois-je faire pour parcourir les données du tableau?
En vous basant sur ce que vous avez dit à propos de la publication d'un message, vous pouvez vérifier si son statut est completed
et si c'est le cas, pointez sur le titre:
foreach ( $lessons as $lesson ){
if( $lesson['status'] == 'completed' ){
echo $lesson['post']->post_title;
}
}