Ho letto @Nacin's You not know Query ieri ed è stato inviato un po 'in una buca di coniglio interrogatorio. Prima di ieri, stavo usando (a torto) query_posts()
per tutte le mie esigenze di interrogazione. Ora sono un po 'più saggio sull'uso WP_Query()
, ma ho ancora alcune aree grigie.
Quello che penso di sapere per certo:
Se sto facendo loop aggiuntivi in qualsiasi punto di una pagina, nella barra laterale, in un piè di pagina, qualsiasi tipo di "post correlati", ecc., Che desidero utilizzare WP_Query()
. Posso usarlo ripetutamente su una singola pagina senza alcun danno. (giusto?).
Quello che non so per certo
- Quando uso @ nacin's
pre_get_posts
vs.WP_Query()
? Dovrei usarepre_get_posts
per tutto ora? - Quando voglio modificare il ciclo in una pagina modello - diciamo che voglio modificare una pagina di archivio di tassonomia - rimuovo la
if have_posts : while have_posts : the_post
parte e scrivo la miaWP_Query()
? O modifico l'output usandopre_get_posts
nel mio file Functions.php?
tl; dr
Le regole di tl; dr che vorrei trarre da questo sono:
- Non usarlo
query_posts
più - Quando si eseguono più query su una singola pagina, utilizzare
WP_Query()
- Quando si modifica un loop, procedere __________________.
Grazie per la saggezza
Terry
ps: ho visto e letto: quando dovresti usare WP_Query vs query_posts () vs get_posts ()? Che aggiunge un'altra dimensione - get_posts
. Ma non ci si occupa pre_get_posts
affatto.