I don’t quite get why this isn’t working. I’m trying to use the following to only show posts from the current year on the front page:
<?php query_posts( "&year=$current_year&order=DESC"); ?>
Yet it still shows posts from 2012 (they weren’t actually made in 2012, but I set the publish date to one of the posts that’s showing to Feb of last year)
According to the documentation, that’s how I should be doing it. Can anyone shed any light?
Thanks
You just need get current date and add it on data_query in wp_query, Look this:
and then use loop:
Don’t use
query_posts
to modify your queries. It’s a waste of resources and it produces unpredictable results, as it overwrites the original query which happens before the template is loaded.Use
pre_get_posts
in your theme’sfunctions.php
instead to alter the query before it is sent to the database, and before the template is loaded.