0

我已经访问了许多以前的条目,但仍然没有找到解决方案。其他人也有同样的问题,但他们的发现不适用于本案。所以我希望有人能给我这个问题的提示。:(

所以我有一个自定义查询,并且已经添加到 paged 参数中:

$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;

$snapshotargs=array(
    'posts_per_page' => 10,
    'post_type' => 'qd_galleries',
    'qd_galleries_cat' => 'snapshot',
    'paged' => $paged
);

$snapshotposts = new WP_Query( $snapshotargs);

然后,在关闭循环的 while 和 if(如 codex 中所述)之间,我放置了导航链接并重置查询:

<?php } ?><!-- end while -->
    <nav id="page_nav">
        <?php get_previous_posts_link('More »') ?><br/>
        <?php get_next_posts_link('More »') ?>
    </nav>
<?php wp_reset_postdata(); ?>
<?php }; ?><!-- end if -->

我什至尝试使用next_posts_link()而不是get_next_posts_link()

尽管有将近 150 个帖子要显示并且分页设置为 10,但它们都返回空白的空 page_nav div。

问题可能是什么?我错过了什么吗?

提前感谢您的支持!

4

1 回答 1

0

以下是您可以修改以满足您的需求的完整功能代码:

// Note that on your site's blog page the query var is page, not paged
// everywhere else it is paged 
$curpage = (get_query_var('page')) ? get_query_var('page') : 1;
$snapshotargs=array(
'posts_per_page' => 10,
'post_type' => 'qd_galleries',
'qd_galleries_cat' => 'snapshot',
'paged' => $curpage
);

query_posts($snapshotargs);
$pagecount = $wp_query->max_num_pages;

while(have_posts()):the_post();?>
    <h1><a href='<?php the_permalink();?>'><?php the_title();?></a></h1>
    <p> the_excerpt();?></p>
    <?php endwhile; ?>

// Note that the pagination is outside of the loop
  <p class='pagination-links'>
   Showing page <?=$curpage;?> of <?=$pagecount;?>&nbsp;&nbsp;
   <?php previous_posts_link();?>&nbsp;&nbsp;<?= ($curpage > 1 && $curpage != $pagecount)?'|':'';?>&nbsp;&nbsp;<?php next_posts_link(); ?>
    </p>
于 2013-08-04T22:55:11.757 回答