Gibt es eine Möglichkeit, eine Reihe von Post-IDs abzurufen, die aus den folgenden Quellen abgefragt wurden:
$latest = new WP_Query( array (
'orderby' => 'rand',
'posts_per_page' => 3
));
if ( $latest -> have_posts() ) : while ( $latest -> have_posts() ) : $latest -> the_post();
get_template_part( 'templates/content', 'post' );
endwhile; endif; wp_reset_postdata();
Nachverfolgen:
Früher habe ich wp_list_pluck
eine Reihe von Post-IDs abgerufen:
$post_ids = wp_list_pluck( $latest->posts, 'ID' );
Dann konvertierte das Array mit der Implode-Funktion in einen String:
$post_ids_string = implode( ',', $post_ids );
Entschuldigen Sie die zweideutige Frage.
wp-query
query-posts
Reich
quelle
quelle
wp_reset_postdata
sollten sich innerhalb und nicht außerhalb der if-Anweisung befinden. Andernfalls können Sie die Post-Daten zurücksetzen, wenn sie nicht geändert wurdenAntworten:
Versuchen
Lesen
wp_list_pluck
quelle
Verwenden Sie das
fields
Argument in Ihrer Abfrage.quelle
Die Verwendung der Lösung von @ s-ha-dum ist wirtschaftlich, wenn Sie nur die IDs abrufen müssen und keine vorherigen Abfrageobjekte festgelegt haben.
Hier ist warum:
Denn in dem Fall, dass Sie nur
'fields' => 'ids'
nichts angeben , erhalten Sie als Gegenleistung nur die IDs.Wenn du mitgehen würdest
'fields' => 'id=>parent'
(sieht wirklich lustig aus), bekommst du auch die Eltern-IDs.Eine andere Verwendung von
'fields'
Argumenten hat ab WordPress 4.7 keine Auswirkungen.Aber falls Sie die Abfrage wie im Beispiel
wp_list_pluck
haben, erledigen Sie den Job.quelle