Excerpt отображает текущую выдержку страницы, которую не вытягивают

Точно так же, как название говорит, что этот код не вытягивает выдержку из $ недавнего, как это должно быть, вместо этого он вытаскивает ее с текущей страницы.

<?php $args = array( 'post_status' => 'pending'); $recent_posts = new WP_Query( $args ); foreach( $recent_posts as $recent ){ $recent->the_post(); // Add this here to cause the other functions to work without the post ID echo '<div id="votes"><li id="voteimage"><a href="' . get_permalink() . '" title="' . esc_attr( $recent["post_title"] ) . '">'; echo get_the_post_thumbnail($recent["ID"], 'thumbnail'); echo '</li></a>'; echo '<li class="vote-title"><a href="' . get_permalink() . '" title="Look '.esc_attr($recent["post_title"]).'" >' . $recent["post_title"].'</a> </li>'; echo '<li class="vote-desc"><a href="' . get_permalink() . '">' . get_the_excerpt() . '</a> </li>'; echo '</div><br></br>'; } ?> 

get_the_excerpt($recent["ID"]) – это часть, вытягивающая выдержки, пытающаяся использовать the_excerpts и заменяя ее вокруг ($recent[get_the_excerpt]) тоже, я ничего не пытаюсь работать.

Пример: streakingpirates.com

В документах параметр для отправки идентификатора сообщения отмечен deprecated .

Это означает, что для того, чтобы ваш пользовательский цикл работал, вам нужно добавить $recent->the_post()

Однако , как вы указали, вы не можете этого сделать, когда используете wp_get_posts , поэтому я предлагаю изменить запрос как настраиваемый цикл:

 $args = array( 'post_status' => 'pending'); $recent_posts = new WP_Query( $args ); 

Затем вы сможете использовать свой код:

Смотри ниже:

 while ( $recent_posts->have_posts()) { $recent_posts->the_post(); // Add this here to cause the other functions to work without the post ID echo '<div id="votes"><li id="voteimage"><a href="' . get_permalink() . '" title="' . esc_attr( $recent["post_title"] ) . '">'; echo get_the_post_thumbnail($recent["ID"], 'thumbnail'); echo '</li></a>'; echo '<li class="vote-title"><a href="' . get_permalink() . '" title="Look '.esc_attr($recent["post_title"]).'" >' . $recent["post_title"].'</a> </li>'; echo '<li class="vote-desc"><a href="' . get_permalink() . '">' . get_the_excerpt() . '</a> </li>'; echo '</div><br></br>'; } 

Также обратите внимание, что get_the_excerpt() вернет содержимое без get_the_excerpt() . Вы можете обернуть его в apply_filters() следующим образом:

 apply_filters('the_content', get_the_excerpt());