現在、既存のサイトの一部分にワードプレスだけを導入しました。
その一部分の中で、ワードプレスの投稿一覧を取得し、ページネーションを実装したいのですが、1ページめから次のページへの移管がうまくいかず困っています。
現状の構成は以下のようになっています。
someserver
-index.php
-blogs.php(ワードプレスの記事を表示させるページ)
-/blog(ワードプレスのインストール先フォルダ
この中で、blogs.phpにページネーション用のコードを記述してあり、記事一覧は無事取得できています。
また、ページ移換時も、www.hoge.com/blogs?page=2
というようにエラーもでずに表示はされるのですが、中身が何も変わっていないので次のページへ中身が伝わっていない?状態です。
php
1<?php 2$paged = (get_query_var('page')) ? get_query_var('page') : 1;#現在表示中のページの番号 3$args = array( 4 'posts_per_page' => 3,#1pgに表示する最大投稿数 5 'paged' => $paged, 6 'orderby' => 'post_date', 7 'order' => 'DESC',#投稿順 8 'post_type' => 'post', 9 'post_status' => 'publish'#投稿状態 公開済みのみ 10); 11$the_query = new WP_Query($args);#全投稿をargsの条件で取得 12if ( $the_query->have_posts() ) :#投稿されているものがあるかぎりループ 13 while ( $the_query->have_posts() ) : $the_query->the_post();#上記がtrueである限りpostの次を出す 14?> 15 <div class="post"> 16 <h1 class="title"><?php the_title(); ?></h1> 17 <?php the_content(); ?> 18 </div> 19<?php endwhile; endif; ?> 20<?php 21if ($the_query->max_num_pages > 1) { #1以上の場合max_num_pagesで総ページ数を取得 22 echo paginate_links(array( 23 'base' => '%_%', 24 'format' => '?page=%#%', 25 'current' => max(1, $paged), 26 'total' => $the_query->max_num_pages 27 )); 28} 29?> 30<?php wp_reset_postdata(); ?>
すみませんがご教授よろしくお願いします。
/------------------------------------追記-------------------------------------/
wp-load.php
でワードプレスを動かしている
'paged' => $paged
に直接数値を書き込んだ場合はページの内容が切り替わっているので'$paged'がうまく動いていないもよう。

バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2017/04/08 07:54
2017/04/08 08:51