Here is my loop
$my_query = new WP_Query(array(
'cat' => -399,
'posts_per_page' => 6,
'offset' => 5,
'paged' => (get_query_var('paged')) ? get_query_var('paged') : 1
));
if ( $my_query->have_posts() ) : while ( $my_query->have_posts() ) : $my_query->the_post();
$imgurl = wp_get_attachment_url( get_post_thumbnail_id($post->ID) );
$finalurl = get_stylesheet_directory_uri(). "/functions/thumb.php?w=180&h=180&a=t&src=".$imgurl;
$date = get_the_date();
$id = $post->ID;
?>
.... loop contents ....
<?php $finalurl = "";
endwhile;
else: ?>
<p><?php _e('Sorry, no posts matched your criteria.'); ?></p>
<?php endif; wp_reset_query();
$id = ""; wp_pagenavi();
Pagination shows same content in all pages. I need your suggestion.
Try changing
$my_query
to$wp_query
to see if that fixes the issue. I found that when you rename the query it messes with the pagination.Also you should move the reset query after the pagination. Here’s a loop I’ve verified works with pagination:
if you use wp_pagenavi in front page, yes, it won’t work.
you need to change the current paged in wp_pagenavi function like this:
// I changed the code below, you can see what different from yours.
Here is an improvement on the answer by @Devin-Walker. This is specifically for archive.php but can be adapted for other loops.
Also it uses the native navigational links of WordPress instead of page_navi()
Hope this helps someone.