Je lisais l 'excellente réponse de Stephen Harris à cette question concernant l' utilisation de WP_query()
, query_posts()
et pre_get_posts
.
Il dit "pre_get_posts est un filtre, pour modifier n'importe quelle requête. Il est le plus souvent utilisé pour ne modifier que la" requête principale "."
Il est possible d'utiliser pre_get_posts
pour filtrer uniquement une requête secondaire spécifique créée avec WP_Query
? par exemple.
$my_secondary_loop = new WP_Query(...);
if( $my_secondary_loop->have_posts() ):
while( $my_secondary_loop->have_posts() ): $my_secondary_loop->the_post();
//The secondary loop
endwhile;
endif;
wp_reset_postdata();
Toute aide très appréciée.
wp-query
pre-get-posts
Ben Pearson
la source
la source
Cela étant dit, sauf si vous excluez votre filtre, utilisez le conditionnel:
is_main_query()
votre filtre se déclenchera sur votre nouveau WP_Query.Si vous souhaitez uniquement cibler votre nouveau WP_Query spécifique, il n'y a aucun moyen de le faire.
la source