显示单个帖子,然后显示所有帖子(带分页)

时间:2013-07-28 作者:jjj

在我的single.php 我想显示单个帖子,然后列出所有带有分页的帖子。

我使用以下代码:

<?php while ( have_posts() ) : the_post(); ?>
<!-- Show single post -->
<?php endwhile; ?>

<?php $page = (get_query_var(\'paged\')) ? get_query_var(\'paged\') : 1;
$all_posts_query = new WP_Query( array(\'posts_per_page\' => 12, \'paged\' => $page));
while($all_posts_query->have_posts()) : $all_posts_query->the_post(); ?>
<!-- Show all the posts -->
<?php endwhile; wp_reset_postdata(); ?>

<?php next_posts_link(\'older\', \'\', \'yes\'); ?>
因此,我可以看到一个帖子,然后是前12个帖子,所有这些,没有寻呼机。。。

非常感谢您抽出时间。

1 个回复
最合适的回答,由SO网友:s_ha_dum 整理而成

标页码does not work well will with secondary queries.

第一,普通分页functions depend upon the main queryglobal 变量$wp_query. 它们不能处理辅助查询。如果你搜索这个网站,这里已经有很多问题了。

其次,尝试对辅助查询分页往往会导致404个状态页。这是因为在加载模板之前运行的查询——“main”查询确定要加载的页面,而它不知道写入模板的查询。

我建议您使用paginate_links 用于辅助查询分页。此网站上有许多使用示例,例如:https://wordpress.stackexchange.com/a/73928/21376

结束

相关推荐

remove a single post_meta

我创建了一个有多个元框的插件。一个元框通过使用update_post_meta(). 另一个元框通过使用add_post_meta(). 我没有在post\\u类型中打开修订。你会怎么做delete_post_meta() 元框中使用add_post_meta()? 需要最佳实践建议。如果你要把整个$post->ID 它将获取记录数组,如何检测特定的meta_key 是否设置为删除?以下是github上的代码:https://github.com/fritzdenim/stec-events/blo