Pagination not working on my archive page for a custom post type
First off I have a custom post type called events, and I wrote a custom query in in my archive-events.php file. Everything is working great except for the pagination.
To trouble shoot I stripped everything out except for the essentials and pagination was working Perfectly. After a lot of googling I think my issue might be that I need to write my query as a function in the functions.php file. Something like this:
function set_posts_per_page_for_events_cpt( $query ) {
if ( !is_admin() $query-is_main_query() is_post_type_archive( 'events' ) ) {
$query-set( 'posts_per_page', '5' );
}
}
add_action( 'pre_get_posts', 'set_posts_per_page_for_events_cpt' );
I'm totally fine with this, but I'm not sure how to rewrite my query so that it works. This is my query:
?php
$currentdate = date("Y-m-d",mktime(0,0,0,date("m"),date("d"),date("Y")));
$paged = ( get_query_var( 'paged' ) ) ? absint( get_query_var( 'paged' ) ) : 1;
$wp_query = new WP_Query( array (
'post_type' = 'events',
'meta_query'= array(
array(
'key' = 'event_date',
'compare' = '',
'value' = $currentdate,
'type' = 'DATE',
)),
'meta_key' = 'event_date',
'orderby' = 'meta_value',
'order' = 'ASC',
'posts_per_page' = 12,
'paged' = $paged,
)
); ?
?php if( $wp_query-have_posts() ): ?
?php while( $wp_query-have_posts() ) : $wp_query-the_post(); ?
!-- All My Events --
?php endwhile;?
?php echo paginate_links(); ?
?php endif; ?
If I'm totally wrong on this please let me know. Any help or a point into the right direction is greatly appreciated.
Topic meta-query custom-post-type-archives functions pagination query-posts Wordpress
Category Web