wordpress获取类别不等于博客的帖子

wordpress获取类别不等于博客的帖子,wordpress,Wordpress,我正在尝试获取最新的文章,这不是一个博客。我知道如何按类别名称获取帖子,但如何获取不等于特定类别名称的帖子。下面是我用来获取类别名称的代码 $query = array ( 'category_name' => 'Blog', 'posts_per_page' => 1, 'post_status' => array('publish') ); 正如Codex()中所述,您可以使用“category__not_in”并向其提供要排除的类别的id

我正在尝试获取最新的文章,这不是一个博客。我知道如何按类别名称获取帖子,但如何获取不等于特定类别名称的帖子。下面是我用来获取类别名称的代码

$query = array (
    'category_name' => 'Blog',
    'posts_per_page' => 1,
    'post_status' => array('publish')   
);
正如Codex()中所述,您可以使用“category__not_in”并向其提供要排除的类别的id

$args = array(
    'category__not_in' => array($id), // Pass in one or more IDs here.
    'posts_per_page' => 1,
    'post_status' => 'publish', // no need to pass it in a array
    'orderby' => 'date' // Since you wanted the latest post, this is default value so not really needed
);
您可以通过在WP后端中悬停category链接找到该类别的ID,然后转到该类别,然后检查地址栏中的地址,它应该如下所示:

/wp-admin/edit-tags.php?action=edit&taxonomy=category&tag_ID=2

在查询参数中有一个
category\u not\u。要使用它,您需要的是要从结果中排除的类别的ID,而不是slug

你可以试试这个:

$query = array (
    'category_not_in' => array(get_cat_ID('Blog'),
    'posts_per_page' => 1,
    'post_status' => 'publish'   
);

非常感谢你的帮助。已尝试此操作,但不起作用:(别忘了。StackOverflow的目的是帮助你找到新的策略和思考困难问题的新方法。我们不能为你调试所有东西:我们不让你了解你的环境或问题。我完全同意你的看法。你的帖子帮我学到了一些新东西。我正在寻找解决方案检查所有问题:)在我的情况下,类别不在不起作用,它仍然显示博客类别下的帖子:(检查此
echo get_cat_ID('Blog'))
在模板中的某个地方,并确保获得正确的
id
。当我从管理面板中看到时,它会显示
分类法=类别&标签id=26&post\u类型=post
,当我回显时,它会显示
26
。id是正确的
$query = array (
    'category_not_in' => array(get_cat_ID('Blog'),
    'posts_per_page' => 1,
    'post_status' => 'publish'   
);