It sounds like you need a `meta_query`. $query = new WP_Query ( array( 'paged' => $paged, 'post_type' => 'event', 'posts_per_page' => 4, 'meta_query' => array( array( 'key' => 'date_key_name', 'value' => date('Y-m-d'), 'compare' => '>=', ) ) ) ); Be aware that your dates need to be in some format that [a machine can parse correctly][1]. ##Reference http://codex.wordpress.org/Class_Reference/WP_Query#Custom_Field_Parameters [1]: https://wordpress.stackexchange.com/a/75318/21376