LoginSignup
0
1

More than 5 years have passed since last update.

wordpressのブログページ(カテゴリー毎)のpaginationが途中からindexに飛ばされてしまう

Posted at

wordpress自作テーマでサイトを作成しています。ブログのページでpaginationを設定していますが、ブログのカテゴリー毎のページのpaginationでは3ページ目以降indexに飛ばされてしまい、chromeのタイトルバーには「ページが表示されません」となります。

ブログ全体(最新順)ではpaginationは機能しますが、カテゴリー毎に表示したときに、paginationを1回クリックしたときは動きますが、2回目(3ページ目)に移動しようとするとこの現象が起きます。

function.phpにpaginationのコード下記の通り記載しています。

//pagination
function pagination($pages = '', $range = 4)
{
$showitems = ($range * 2)+1;

 global $paged;
 if(empty($paged)) $paged = 1;

 if($pages == '')
 {
     global $wp_query;
     $pages = $wp_query->max_num_pages;
     if(!$pages)
     {
         $pages = 1;
     }
 }   

 if(1 != $pages)
 {
     echo "<div class=\"pagination\"><span>Page ".$paged." of ".$pages."</span>";
     if($paged > 2 && $paged > $range+1 && $showitems < $pages) echo "<a href='".get_pagenum_link(1)."'>&laquo; First</a>";
     if($paged > 1 && $showitems < $pages) echo "<a href='".get_pagenum_link($paged - 1)."'>&lsaquo; Previous</a>";

     for ($i=1; $i <= $pages; $i++)
     {
         if (1 != $pages &&( !($i >= $paged+$range+1 || $i <= $paged-$range-1) || $pages <= $showitems ))
         {
             echo ($paged == $i)? "<span class=\"current\">".$i."</span>":"<a href='".get_pagenum_link($i)."' class=\"inactive\">".$i."</a>";
         }
     }

     if ($paged < $pages && $showitems < $pages) echo "<a href=\"".get_pagenum_link($paged + 1)."\">Next &rsaquo;</a>";
     if ($paged < $pages-1 &&  $paged+$range-1 < $pages && $showitems < $pages) echo "<a href='".get_pagenum_link($pages)."'>Last &raquo;</a>";
     echo "</div>\n";
 }

}

ブログをカテゴリー毎に表示したときのpaginationの動作を正常に動かすプログラムがお分かりでしたらご教示願えますでしょうか。
どうぞ宜しくお願いいたします。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1