我访问了一些以前的条目,但仍未找到解决方案。其他人有同样的问题,但他们的发现并不适用于这种情况。所以我希望有人可以给我一个关于这个问题的提示。 :(
所以我有一个自定义查询,并已添加到分页参数中:
$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()。
他们都返回空白的空page_nav div,即使有近150个帖子要显示且分页设置为10。
问题是什么?我错过了什么吗?
先谢谢您的支持!
答案 0 :(得分: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;?>
<?php previous_posts_link();?> <?= ($curpage > 1 && $curpage != $pagecount)?'|':'';?> <?php next_posts_link(); ?>
</p>