在一个单一的/详细的自定义文章页面,我想显示一个自定义导航的李的或div在侧边栏,显示标题,摘录和永久链接的自定义后系列内的未来3个职位。因此,如果我们在自定义帖子3上,那么它将在侧边栏中显示4,5,6。
我发现最接近的是:
global $post;
$current_post = $post; // remember the current post
for($i = 1; $i <= 3; $i++){
$post = get_previous_post(); // this uses $post->ID
setup_postdata($post);
// do your stuff here
the_title();
}
$post = $current_post; // restore
问题是这只显示了第一个下一个职位,我需要显示3。
2条答案
按热度按时间hgqdbh6s1#
你的代码的问题是get_previous_post()获取当前post之前的post,所以你的for循环只获取相同的post 3次。
您需要使用的是wp_get_recent_posts。您可以在WordPress循环中使用它,使用二级循环来进行查询。
根据您添加代码的位置,您可能只能使用wp_get_recent_posts():
daupos2t2#
上面的代码非常接近。看起来你只是缺少了一个
endfor;
和一点html。试试吹代码:当使用
the_excerpt()
时,它应该包含一个“阅读更多”的链接,所以你不需要使用the_permalink()
函数。如果您没有3个或更多以前的帖子,它只会显示有多少以前的帖子。我在single.php模板文件中测试了这一点,但是如果你使用的是自定义的模板文件,它应该可以在自定义的post类型的单个模板文件中工作。如果你有任何问题请告诉我。