当meta_key的值是数组时,如何进行meta_query?

时间:2017-07-07 13:04:02

标签: php arrays wordpress

当我尝试执行以下查询时,我正在使用Wordpress网站并遇到障碍:

    $args=array(
     'post_type' => 'post',
     'post_status' => 'publish',
     'meta_query'    =>  array(
        array(
       'key'     => 'ad_info', 
        'value'  => // check again with weight between 50 and 100,
        'compare' => //compare operator, 
        ),      
       )
     );

密钥ad_info的值为:Array ( [weight] => 48 [height] => 160),我想检查此数组中weight的值是否介于50和100之间。 任何人都可以帮我解决这个问题吗? 感谢

1 个答案:

答案 0 :(得分:0)

在mysql数组值中保存为字符串,这对WP_Query过滤产生了问题。

这个问题的最佳解决方案 - 将保存方法更改为2个键:

ad_info_width ad_info_height

通过这种方式,您可以在compare之间使用meta_query。