定义多个类别以显示最新帖子

时间:2013-04-04 作者:Nikki Mather

我有一个功能,让我在我的网站上显示最新的帖子,但我想功能显示多个类别的帖子,而不仅仅是一个特定的类别。检查下面的代码,我所说的可能开始有意义了。

function latestposts()   {
    $args = array( \'posts_per_page\' => 4, \'cat\' => \'4\', \'5\', \'6\', \'7\');                  
    $last_5_posts_query = new WP_Query( $args );
    while($last_5_posts_query->have_posts()) : 
        $last_5_posts_query->the_post();
        $link = get_permalink();
        $title = get_the_title();                           

        $content .= \'<div class="thepost">\';
        $content .= \'<div class="thumbnail">\' 
        . get_the_post_thumbnail( null, "home-post-thumbnail") 
        . \'</div>\';
        $content .= \'<h3><a href=\'.$link.\' target="_top">\'.$title.\'</a></h3>\';
        $content .= \'<p class="excerpt">\' .get_the_excerpt(). \'</p>\';
        $content .= \'</div>\';
    endwhile;

return $content;
我试图用下面的代码显示多个类别,但它只显示填充类别4的项目。如何显示来自多个类别的帖子?我原以为下面的代码可以工作,但可惜不行。

$args = array( \'posts_per_page\' => 4, \'cat\' => \'4\', \'5\', \'6\', \'7\'); 

1 个回复
SO网友:Milo

这是错误的格式PHP array:

\'cat\' => \'4\', \'5\', \'6\', \'7\'
使用category__in 并传递类别ID数组:

$args = array(
    \'posts_per_page\' => 4,
    \'category__in\' => array( 4, 5, 6, 7 )
);
请参见WP_Query 了解所有有效参数以及如何正确设置其格式。

结束

相关推荐

为什么当我刷新post-new.php文件时,页面/帖子ID保持增长?

我创建了一个自定义帖子类型,出于调试原因,我在“添加新帖子”上显示帖子ID。。。页如果我刷新页面而不保存甚至不创建新帖子(因此我只需在post new.php上按f5),那么帖子ID就会一个接一个地增长。为什么会发生这种情况?这是正常的行为吗?