GET_POST忽略‘类别’并显示所有帖子

时间:2014-03-02 作者:stockholmux

这件事让我有点疯狂。我试图在我正在编写的插件的管理页面上显示一个类别中的帖子列表。以下代码在我的开发服务器(OS X/Apache)上运行良好:

$args = array(
    \'posts_per_page\' => $pageSize,
    \'offset\'=> $offset,
    \'category\' => 9
);

$posts = get_posts($args);

foreach ($posts as $key => $aPost) {
    (...)
}
你可能会怀疑,我只收到ID为9的类别中的帖子。现在,在我的生产服务器(Linux/Nginx)上,它显示了所有帖子,就好像从未设置过category参数一样。我只提到nginx/apache/linux/os-x,因为其他所有东西都运行相同的主题和安装的插件(生产服务器上的Jetpack除外)。

有什么想法吗?

1 个回复
SO网友:stockholmux

好啊在经历了一个令人沮丧的周末后,我有了一个解决方案(但仍然不是为什么更简单的版本可以在一个安装上工作而不能在另一个安装上工作的真正原因!)

$args = array(
    \'posts_per_page\' => $pageSize,
    \'offset\'=> $offset,
    \'tax_query\' => array(
        array(
            \'taxonomy\' => \'category\', 
            \'field\' => \'term_id\', 
            \'terms\' => 9
        )
);
虽然这是一个完全可行的解决方案,但我仍然感到困惑。

结束