WP Page Naviにてページネーションを実装しました。
ブログ記事一覧の時は問題なく動作するのですが、カテゴリー一覧を表示するとページネーションが実際のカテゴリー一覧記事よりも多く表示されます。
PHP
<div class="blog_index__wrap"> <?php $blog_cat = array( 'post_type' => 'post', 'posts_per_page' => 10, 'orderby' => 'post_date', 'paged' => $paged, ); $blog_cat = new WP_Query($blog_cat); ?> <?php if ($blog_cat->have_posts()) : ?> <?php /* Start the Loop */ while (have_posts()) : the_post(); ?> <article class="blog_article"> <div class="blog_img"> <?php the_post_thumbnail('thumbnail', array('class' => 'blog_img')); ?> <p class="blog_category"><?php the_category(); ?></p> </div> <div class="blog_title_wrap"> <p class="blog_date"> <?php echo get_the_date(); ?></p> <a class="blog_title" href="<?php the_permalink(); ?>"> <h3><?php echo mb_substr($post->post_title, 0, 12) . '……'; ?></h3> </a> <p class="blog_text"> <?php if (mb_strlen($post->post_content, 'UTF-8') > 100) { $content = str_replace('\n', '', mb_substr(strip_tags($post->post_content), 0, 100, 'UTF-8')); echo $content . '…'; } else { echo str_replace('\n', '', strip_tags($post->post_content)); } ?></p> </div> </article> <?php endwhile; ?> <?php else : ?> <p class="blog__title">投稿が見つかりません。</p> <?php endif; ?> <div class="page_navi"> <?php if (function_exists('wp_pagenavi')) wp_pagenavi(array('query' => $blog_cat)); ?> <?php wp_reset_postdata(); ?> </div> </div>
wp_pagenavi(array('query' => $blog_cat)) として、 $blog_catを取得しているはずなのになぜブログ記事の一覧をwp_pagenaviが取得しているのでしょうか?
※ブログ記事の一覧は別の固定ページにて$blog_queryで取得しています。
まだ回答がついていません
会員登録して回答してみよう