我正在运行WordPress 3.8.1,而且我很难使用WP_Query()获得正确的结果。 我使用带有这些参数的数组:
$args = array(
'tag_slug__and' => array('usa', 'china'),
'category__and' => array(211, 420),
'posts_per_page' => '-1',
's' => 'money',
);
以下代码就像我想要的那样工作:
$GLOBALS['wp_query'] = new WP_Query();
return $GLOBALS['wp_query']->query($args);
然而这给了我一个空洞的结果:
$obj = new WP_Query();
$posts = $obj->query($args);
return $posts;
我var_dumped每个对象,它们看起来完全相同,除了一个区别 - 第一个代码有一个"帖子"结果键,而第二个代码有一个空的"帖子"键。 (我发现SQL没有差异)
上面的第一个代码直接来自query_posts()。
我应该补充一下" s"参数中的键会影响结果。如果我删除包含搜索字符串的行(" s"键),则第二个代码也可以。
我是否必须使用$ GLOBALS才能将其与#34; s"?
一起使用