快速查看documentation for get_posts(), 看起来你无法根据帖子的类别排除帖子。
EDIT: 实际上,多亏了AntonChanning, 事实证明你可以-只需添加&cat=-1
到参数字符串,其中1是要排除的类别的ID:
$postslist = get_posts(\'numberposts=1&order=DESC&orderby=date&cat=-1\');
如果需要,您还可以添加多个类别,例如。
cat=-1,-2,-3
首选的“Wordpress方式”是using WP_Query.
如果你想这样做,而不是get_posts()
, 您需要创建一个WP\\u Query的新实例,并在数组中传递参数。从上述链接的类别参数标题下:
category\\uu not\\u in(数组)–使用类别id
这是您要用于排除类别的参数:
$postslist = new WP_Query(array(
"post_type" => "post",
"posts_per_page" => 1,
"order" => "DESC"
"orderby" => "date",
"category__not_in" => 1,
));
你会注意到,我还添加了“post”post类型,以模仿你的行为
get_posts()
, 以及
posts_per_page
参数是指定通过WP\\U查询返回的帖子数的方法。
如果使用此WP\\U查询路线,则需要进行的另一个更改是使用while
循环而不是foreach
您当前有。有clear usage examples 在文档中的“用法”标题下,我将避免复制和粘贴它们。
祝你好运