我的所有模板都使用以下内容显示给定类别的所有帖子:
<ul>
<?php $posts = get_posts('category_name=jobs'); foreach($posts as $post) { ?>
<li><a href="<?php the_permalink() ?>" target="_parent"><?php the_title(); ?></a>
</li>
<?php } ?>
</ul>
然而,上述模板代码并未显示超过“作业”类别中最近的5篇帖子。有超过5个显示,他们确实有“已发布”状态。
有什么想法吗?
答案 0 :(得分:0)
get_posts具有您可以编辑的默认值
<?php $args = array(
'posts_per_page' => 5,
'offset' => 0,
'category' => '',
'orderby' => 'post_date',
'order' => 'DESC',
'include' => '',
'exclude' => '',
'meta_key' => '',
'meta_value' => '',
'post_type' => 'post',
'post_mime_type' => '',
'post_parent' => '',
'post_status' => 'publish',
'suppress_filters' => true ); ?>
了解更多:http://codex.wordpress.org/Template_Tags/get_posts
希望有所帮助
答案 1 :(得分:0)
尝试将代码更改为:
$posts = get_posts ( array ( 'category_name' => 'jobs', 'posts_per_page' => -1));
使用-1
将显示所有帖子。您可以将其更改为另一个正整数,以限制您返回的帖子。
答案 2 :(得分:0)
get_posts
和get_pages
有点混乱。有时查看get_posts和get_pages的文档有助于了解他们两者可以做些什么 - 有时会在菜单上显示帖子而不是页面 - 但有时候它实际上可以在两个地方工作。
在这种情况下,get_pages
文档会告诉我们有关number
参数的信息:
<强>号强>
( integer )设置要列出的页数。这导致了 要定义的SQL LIMIT值。默认为无限制。这个参数是 添加了2.8版。注意: get_posts()使用参数
numberposts
代替number
。
撰写本文时,numberposts
文档中仅提及get_posts
如下:
注意:&#39; numberposts&#39;和&#39; posts_per_page&#39;可以互换使用。
去图。
无论如何,你有它 - numberposts
。
所以如果你想要10个帖子......:
get_posts('category_name=jobs&numberposts=10')