サポート » 使い方全般 » WP-PageNaviが複数カテゴリーの場合上手く機能しない

  • 質問失礼します。

    現在category-news.phpに
    プラグインWP-PageNaviを使用してページング機能を使用しています。

    しかしcategory-news.phpは実際
    投稿のカテゴリーがnewsとblogの2つを一覧表示しています。
    複数カテゴリーの表示は以下で記述しています。

    
    $q=new WP_query('category_name=news,blog&posts_per_page=5&paged='.$paged);
    if($q->have_posts()): while($q->have_posts()): $q->the_post();
    $cat = get_the_category();
    $cat_name = $cat[0]->cat_name;
    

    【実際に起きている問題】 
    一覧ページの内容
    /////////
    newsの投稿
    newsの投稿
    blogの投稿
    newsの投稿
    newsの投稿
    newsの投稿
    /////////
    newsの投稿を5件
    blogの投稿を1件
    計6件の投稿データがあります。
    上記で一覧表示した場合ページナビには2ページ目のボンタンが表示されています。
    しかし2をクリックすると404ページに飛んでしまいます。
    ページナビは以下コードで設置しています。

    
    if(function_exists('wp_pagenavi')) { wp_pagenavi(array('query' => $q));
    

    恐らくページナビはnewsとblogのスラッグの投稿が6件なので2のボタンを表示してくれているが、2ページ目に遷移した際、newsのみで一覧をカウントし、blogの1件分が抜けており、5件となり2ページ目はないので404になっていると考えています。
    どの様にするればページナビがただしく2ぺージ目を表示してくれるようになるのでしょうか。

    解決方法をご存じの方がいらっしゃいましたらご教授いただけますと幸いです。

    よろしくお願いいたします。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • mizugamiyukiさん、こんにちは。

    WP-PageNaviでアーカイブページでページナビを正常に動作させるには、管理画面の表示設定にある「1ページに表示する最大投稿数」の数値を posts_per_page の数値と合わせる必要があるようです。
    ただし、実際に試してみましたが、カテゴリーを混在させて表示させようとした場合、同じ数値の設定では動作しませんでした。管理画面側の数値を posts_per_page の数値より低く設定すると動作しているように見えました。正確には動作確認する必要があるかと思います。

    ご参考になれば。

    • この返信は1ヶ月、 1週前にshokun0803が編集しました。
    スレッド開始 mizugamiyuki

    (@mizugamiyuki)

    shokun0803様

    ご解答ありがとうございます!

    「1ページに表示する最大投稿数」をposts_per_pageより少なく、1に設定するとできました!
    しかし他のアーカイブページも存在し、そのページは1つのカテゴリーのみのアーカイブページとなっています。
    そのページのposts_per_pageも5にしてあり(すべてのアーカイブページのposts_per_pageと1ページに表示する最大投稿数を表示カテゴリーの数に関係なく同じにしている)そうでないとページングがおかしくなると思っていましたが「1ページに表示する最大投稿数」を1に設定した状態で他のアーカイブページを確認したところ正常にページナビが機能していました。

    勝手な思い込みで盲点になっていたのでたすかりました!

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • このトピックに返信するにはログインが必要です。