J'ai lu @ nacin Tu ne connais pas Query hier et j'ai été envoyé à un trou de lapin interrogateur. Avant hier, j'utilisais (à tort) query_posts()pour tous mes besoins d'interrogation. Maintenant, je suis un peu plus sage sur l'utilisation WP_Query(), mais j'ai encore des zones grises.
Ce que je pense savoir à coup sûr:
Si je fais des boucles supplémentaires n'importe où sur une page - dans la barre latérale, dans un pied de page, dans n'importe quel type de "messages liés", etc., je veux utiliser WP_Query(). Je peux l'utiliser à plusieurs reprises sur une seule page sans aucun dommage. (droite?).
Ce que je ne sais pas avec certitude
- Quand est-ce que j'utilise @ nacin
pre_get_postsvsWP_Query()? Devrais-je utiliserpre_get_postspour tout maintenant? - Lorsque je souhaite modifier la boucle dans une page de modèle (disons que je souhaite modifier une page d'archive de taxonomie), dois-je supprimer la
if have_posts : while have_posts : the_postpartie et écrire la mienneWP_Query()? Ou dois-je modifier la sortie en utilisantpre_get_postsdans mon fichier functions.php?
tl; dr
Les règles que je voudrais en tirer sont les suivantes:
- Ne jamais utiliser
query_postsplus - Lorsque vous exécutez plusieurs requêtes sur une même page, utilisez
WP_Query() - Lorsque vous modifiez une boucle, faites ceci __________________.
Merci pour toute sagesse
Terry
ps: j'ai vu et lu: quand utiliser WP_Query vs query_posts () vs get_posts ()? Ce qui ajoute une autre dimension - get_posts. Mais ne traite pas pre_get_postsdu tout.