具有meta_query和自定义字段值为0的WP_Query

问题描述:

我遇到了一些意外的行为。我在自己的帖子中添加了“评分”自定义字段。我想计数的职位数有一定的评价:具有meta_query和自定义字段值为0的WP_Query

$args = array(
    'post_status' => 'publish', 
    'meta_query' => array(
     array(
      'key' => 'rating', 
      'compare' => '=', 
      'value' => 7 
     ) 
    ) 
); 
$posts = new WP_Query($args); 
echo $posts->post_count;

当我的值设置为7,它回声职位为等级的正确数量。但由于某种原因,如果将该值设置为0,则会反映已发布帖子的总数。我错过了什么?

+0

可能是一个过滤器是解释0作为布尔,尝试前缀与(int)0 – Don 2011-03-31 13:27:12

我做了一点挖掘,这似乎是花花公子的PHP“空”功能。这将在WordPress 3.2中解决。这里的详细信息:http://core.trac.wordpress.org/ticket/15292

我不知道为什么,但我需要的时候我只是用比较=“< =”值=“0.5”

我认为wordpress的使用0作为空或空变种,而不是实际为零。