What are the differences between using WP_Query()
and get_posts()
? Which is better to use in what case and why?
-
What @John P Bloch said.– MikeSchinkelAug 26, 2010 at 18:56
-
Here is similar question with very good answer: wordpress.stackexchange.com/questions/1753/…– Krzysiek Dróżdż ♦Dec 16, 2013 at 17:34
2 Answers
Well, get_posts()
actually instantiates a new WP_Query
object, so if you're comfortable using WP_Query
directly, don't even bother with get_posts()
; get_posts
will only return the results from the database, whereas WP_Query
gives you the whole functionality of the class.
In addition to what John P Bloch says, you can modify the default WP_Query object (instead of creating an new instance) before it runs with it's class methods and an action hook, reducing the db calls you make.