我的自定义帖子类型'游戏'分类中有一组字段名为'gamename' - 我正在尝试使用 query_posts <检索此值/ strong>喜欢这样....
$args = array(
'post_status'=>'publish',
'post_type'=>'games',
'gamename' => 'Space Invaders'
);
query_posts($args);
if(have_posts()) : while (have_posts()) : the_post();
the_title();
endwhile; else:
echo 'No Posts!';
endif;
wp_reset_query();
这对我不起作用,它只是返回'没有帖子'
有人可以建议我做错了吗?
答案 0 :(得分:1)
首先,不要使用query_posts();
,blech。使用$query = new WP_Query
,您可以阅读here。
query_posts()
试图成为国王并覆盖全局变量(EW!),但WP_Query
类不会,并且被认为是应该循环发布的最佳(唯一?)方式。< / p>
我个人(并且有同事)都有同样的问题,query_posts()
没有回复任何帖子。最后,这是因为它覆盖了全局变量(即$ post D :),这使得它返回空。 9/10次,使用$query = new WP_Query;
代替工作!
如果您已婚要使用query_posts()
,请尝试在您的代码之前调用wp_reset_query()
,也许您有一个插件或者没有重置它的东西在您的代码启动之前正确
修改强>
你有
if(have_posts()) : while (have_posts()) : the_post();
你有if语句的原因,而不仅仅是标准:
while ( have_posts() ) : the_post();