• 解決済 momonuts

    (@momonuts)


    CPT UIで作成した複数のカスタム投稿の記事一覧ページにWP-PageNaviでページ送りを設置しましたが動作しません。

    コードは以下の様に記入しています。

    <ul class="topwnew">
    <?php
         global $post;
         $my_posts= get_posts(array(
         'post_type' => array('投稿タイプ名1','投稿タイプ名2','投稿タイプ名3','投稿タイプ名4'),
         'numberposts' => 10
         ));
         foreach($my_posts as $post):setup_postdata($post);
    ?>
    <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
    <?php endforeach; ?>
    </ul>
    
    <div id="pagenavis" class="clearfix">
    <?php if(function_exists('wp_pagenavi')) { wp_pagenavi(); } ?>
    </div>

    複数のカスタム投稿記事一覧ではなく、個別ですと上記で動作しているので
    複数だと記述が違うもしくは何か追加しなくてはいけないのでしょうか。

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • https://ja.forums.wordpress.org/topic/11265?replies=3
    抜粋

    get_postsでは、wp_pagenaviは使えません。query_postsを使うか、WP_Queryを使い、wp_pagenaviのqueryパラメーターを指定してください。

    トピック投稿者 momonuts

    (@momonuts)

    gatespaceさま

    いつもありがとうございます。

    <?php if(function_exists('wp_pagenavi')) { wp_pagenavi(); } ?>

    <?php if(function_exists('wp_pagenavi')) {
    	ob_start();
    	wp_pagenavi();
    	$retHtml.= ob_get_clean();
    } ?>

    と変更すればいけると解釈してしまったのですが、それだとダメでした。。
    ページ送り部分が表示されなくなってしまいました。

    こういった場合はquery_postsを使った記述に書き換える必要があるのでしょうか。

    今まで色々試行錯誤したのですが、未だ解決にたどり着けません….
    未だPHPが理解出来ておらずお恥ずかしい限りですが
    ご教授いただければ幸いです。。。

    紹介した投稿のソースコードはそのまま流用できませんよ。
    (実装のための目的が異なる)

    query_postsを使うか、WP_Queryを使い、wp_pagenaviのqueryパラメーターを指定してください。

    トピック投稿者 momonuts

    (@momonuts)

    gatespace様

    何度もすみませんでした。
    試行錯誤の上、下記で思い通りの動作をさせることができました。
    ありがとうございました。

    <ul>
    <?php
    $args = array(
         'post_type' => array('投稿タイプ名1','投稿タイプ名2','投稿タイプ名3','投稿タイプ名4'),
         'posts_per_page' => 20,
         'paged' => $paged,
    ); ?>
    <?php query_posts( $args ); ?>
    <?php if ( have_posts() ) while ( have_posts() ) : the_post(); ?>
    表示させたい内容
    <?php endwhile; // end of the loop. ?>
    <?php wp_reset_query(); ?>
    </ul>
    
    <?php if(function_exists('wp_pagenavi')) { wp_pagenavi(); } ?>
4件の返信を表示中 - 1 - 4件目 (全4件中)
  • トピック「複数のカスタム投稿タイプの投稿一覧ページでページ送り」には新たに返信することはできません。