J'essaie d'obtenir la liste des identifiants d'un type de publication personnalisé à l'aide de WP_Query, mais les résultats non souhaités sont renvoyés, ce qui correspond à une fuite de mémoire et à un navigateur bloqué.
Voici le code que j'utilise:
$the_query = new WP_Query("post_type=post&posts_per_page=-1&field=ids");
if ($the_query->have_posts()) {
while ($the_query->have_posts()){
echo get_the_ID();
}
}
Mon navigateur tente infiniment de charger la page. Peut-être que quelqu'un sait ce qui ne va pas avec le code ci-dessus ..
Il vous manque l'appel de la fonction the_post()
dans la boucle. Il suffit d'ajouter
$the_query->the_post();
dans ta boucle. En dehors de cela, votre boucle devrait fonctionner
N'oubliez pas non plus de réinitialiser vos données postérieures une fois la requête terminée.
Je sais que vous voulez une solution "utilisant WP_Query", mais pourquoi ne pas utiliser get_posts()
pour cela?
$posts_ids = get_posts('post_type=post&posts_per_page=-1&fields=ids');
// $posts_ids is now an array of IDs
echo implode(',', $posts_ids); // prints: 123, 124, 125, 126, ...
// or
foreach( $posts_ids as $id ) {
echo $id;
}