我想显示所有帖子,但只从“特色”类别中排除最新的帖子,其他来自此类别的帖子应该会显示。你知道我应该向循环中添加什么来实现这一点吗?我希望所有其他猫的帖子也能显示出来!
将最新帖子从类别X中排除,但显示休息
2 个回复
SO网友:ggutenberg
由于默认情况下,循环将按日期降序检索帖子,因此可以执行以下操作:
环路外:
$featured_flag = false;
回路内部:if(in_category(\'Featured\')) {
if($featured_flag) {
the_content();
}
else {
$featured_flag = true;
}
}
else {
the_content();
}
第一次遇到来自特色类别的帖子(即最近的帖子)时,它将被忽略,并且$featured_flag
将设置为true
. 循环的后续时间the_content()
将显示。Edit: 要考虑分页,您可以更改$featured_flag
到$_SESSION
变量这样,真/假值将在多个页面上保持,并且一旦设置为true
帖子将继续正确显示。感谢您指出我的错误方式(网络:)
SO网友:Bainternet
不久前,我发布了一个简单的函数gets latest post in a certain category:
function get_lastest_post_of_category($cat){
$args = array( \'posts_per_page\' => 1, \'order\'=> \'DESC\', \'orderby\' => \'date\', \'category__in\' => (array)$cat);
$post_is = get_posts( $args );
return $post_is[0]->ID;
}
因此,一旦有了该功能,就可以使用WP\\u Query或Query\\u posts并使用post__not_in
参数可以排除该帖子,例如:query_posts(array(`post__not_in` => array(get_lastest_post_of_category($CAT_ID))));
只需将$CAT\\U ID更改为实际类别ID结束