WordPress:next_posts_link() 在页面模板循环之前不起作用

Posted

技术标签:

【中文标题】WordPress:next_posts_link() 在页面模板循环之前不起作用【英文标题】:WordPress: next_posts_link() doesn't work before page template loop 【发布时间】:2011-10-22 20:46:47 【问题描述】:

我有一个已构建的存档页面模板,该模板在循环结束时导航成功。但是,现在我想在顶部添加一个额外的导航。但是,在我复制并粘贴了确切的代码后,“上一个条目”会正确显示和链接,但“下一个条目”从未像在底部导航中那样显示。

在我的 page-archive.php 文件中,这是我的代码的要点:

<div class="navigation top">
<?php next_posts_link('Next Entries') ?> <!-- Doesn't appear to show up! -->
<?php previous_posts_link('Previous Entries') ?>
</div>

<?php $page = (get_query_var('paged')) ? get_query_var('paged') : 1; query_posts("showposts=1&paged=$page");
while ( have_posts() ) : the_post() ?>

<div id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
<h3><a href="<?php the_permalink() ?>" ><?php the_title(); ?></a></h3>
<?php the_content(); ?>
</div>

<?php endwhile; ?>

<div class="navigation bottom">
<?php next_posts_link('Next Entries') ?>
<?php previous_posts_link('Previous Entries') ?>
</div>

我了解页面模板不是创建存档页面的理想方法,因此如果有其他方法可以生成完全可自定义的存档页面,请通知我!

目前,我使用 home.php 文件来显示静态内容,因此 page-archive.php 是一种将用户引导至网站实际“博客”部分的方法。

【问题讨论】:

【参考方案1】:

试着把这个字符串:

  <?php $page = (get_query_var('paged')) ? get_query_var('paged') : 1; query_posts("showposts=1&paged=$page");?>

到页面的最顶部。您需要这样做,因为next_posts_linkprev_posts_link 调用使用了一些由query_posts 调用设置的全局变量。

【讨论】:

以上是关于WordPress:next_posts_link() 在页面模板循环之前不起作用的主要内容,如果未能解决你的问题,请参考以下文章

自定义wp_query上的Wordpress分页(next_posts_link)未显示

PHP 将类添加到previous_posts_link()和next_posts_link()在WordPress中

WordPress 分页 - 添加锚链接

WordPress 下一组/上一组帖子不适用于我的主题

自定义帖子类型不接受页面变量

wod按next和previous post link