WordPress wp_pagenavi for CPT在另一个CPT单页

时间:2016-02-25 08:12:16

标签: php wordpress pagination custom-post-type

我知道有很多关于如何将wp_pagenavi与自定义wp_query()用于CPT的问题,我可以轻松处理它。但是我遇到了一些更复杂的情况。

我有一个名为'项目的CPT'和CPT命名为avtoritet_audiotape'。我需要做的是 - 展示所有CPT' avtoritet_audiotape'使用分页,但在单个项目' CPT - 它是一种关系(例如,当我在页面http://simpex/project/radioprogramma-avtoritet时,其中'项目'是我的CPT名称)。

我的代码完全适用于任何存档页面,甚至是单页:

<?php while ( have_posts() ) : the_post(); ?>
    <?php the_title(); ?> 
    Information related to my single CPT instance 'project'
<?php endwhile; ?>

<?php $loop = new WP_Query( 
    array( 
        'post_type' => 'avtoritet_audiotape', 
        'posts_per_page' => 6, 
        'paged' => get_query_var('paged'),
        'meta_key' => 'audiotape_date',
        'orderby' => 'meta_value_num',
    ) ); 
?> 
<?php if ( $loop->have_posts() ): ?>
#Some stuff
<?php wp_pagenavi( array( 'query' => $loop ) );  ?>
<?php endif; ?>

因此,分页正确显示分页链接,但在尝试访问http://simpex/project/radioprogramma-avtoritet/page/2时,它会重定向到http://simpex/project/radioprogramma-avtoritet

无论如何都有可能吗?谢谢

1 个答案:

答案 0 :(得分:0)

  

请尝试这种方式。

$paged = ( get_query_var('paged') ) ? get_query_var('paged') : 1;
  $postArray = array('post_type' => 'room', 'posts_per_page' => 5, 'order' => 'DESC', 'paged' => $paged);
  $roomPost = new WP_Query($postArray);
  global $post;
    if ($roomPost->have_posts()) {
        while ($roomPost->have_posts()) : $roomPost->the_post();  ?>
           <div class="post_title"> <?php the_title(); ?></div> 
       <?php
       endwhile;
       wp_pagenavi(array('query' => $roomPost));
    }