HighLab

wp_pagenaviが2ページ目以降も1ページ目が表示される場合

  • 公開日:
  • 更新日:
  • 文字数:2246文字

固定ページで投稿記事の一覧を表示させようとしたが、はまってしまった話

l class="archive__list" id="match-height-news">
                <?php
                $args = array(
                  'post_type' => 'post',
                  'posts_per_page' => 20,
                  'category__not_in' => array()
                ); ?>
<?php $the_query = new WP_Query( $args ); ?>

                <?php if ( $the_query->have_posts() ) : ?>
                <?php while ( $the_query->have_posts() ) : $the_query->the_post(); ?>
                  <?php get_template_part( 'inc/inc-loop-archive' ); ?>
                <?php endwhile; ?>
                <?php else : ?>
                <?php endif; ?>

<?php if(function_exists('wp_pagenavi')) { wp_pagenavi(array('query' => $the_query)); } ?>

wp_pagenaviはプラグインを使用しております。
https://ja.wordpress.org/plugins/wp-pagenavi/

ですが、2ページ目が表示されない・・
なぜが結局原因はわかりませんでしたが、解決はしました。

global $post;
                $paged = get_query_var('paged'); //get_query_var( 'paged' ) ? intval( get_query_var( 'paged' ) ) : 1;

                $args = array(
                  'paged' => $paged,
                  'post_type' => 'post',
                  'posts_per_page' => 20,
                  'category__not_in' => array()
                ); ?>

                <?php $the_query = new WP_Query( $args ); ?>

                <?php if ( $the_query->have_posts() ) : ?>
                <?php while ( $the_query->have_posts() ) : $the_query->the_post(); ?>
                  <?php get_template_part( 'inc/inc-loop-archive' ); ?>
                <?php endwhile; ?>
                <?php else : ?>
                <?php endif; ?>

<?php if(function_exists('wp_pagenavi')) { wp_pagenavi(array('query' => $the_query)); } ?>

これでできた!!

$paged = get_query_var('paged'); //get_query_var( 'paged' ) ? intval( get_query_var( 'paged' ) ) : 1;

                $args = array(
                  'paged' => $paged,
                  'post_type' => 'post',
                  'posts_per_page' => 20,
                  'category__not_in' => array()
                ); ?>

ここを追加すれば成功!
深夜3時の出来事で、原因を調べるのも面倒なので、
自分のメモとして書いております。