Php Wordpress |基于选择拆分查询

Php Wordpress |基于选择拆分查询,php,wordpress,Php,Wordpress,我在前端为用户在我的ajax表单中搜索的内容实现过滤器,我正在处理这个工作完美的查询 $args = array( 'post_type' => 'pro', 'posts_per_page' => -1, 'meta_key' => $_POST['categoryfilter'], 'meta_query' => array( 'relation' => 'AND',

我在前端为用户在我的ajax表单中搜索的内容实现过滤器,我正在处理这个工作完美的查询

$args =  array(
    'post_type' => 'pro',
    'posts_per_page' => -1,
    'meta_key'    => $_POST['categoryfilter'],
    'meta_query'  =>             array(
        'relation'  => 'AND',
        array(
            'key'     => $_POST['categoryfilter'],
            'value'   => 0,
            'compare' => '>=',
            'type'    => 'NUMERIC',
        ),
        array(
            'key'     => $_POST['categoryfilter'],
            'value'   => 100,
            'compare' => '<=',
            'type'    => 'NUMERIC',
        ),
    ),
    'orderby'    => 'meta_value_num',
    'order'       => $_POST['order'],
);
因此,我尝试使用此代码,但不起作用:

if( isset($_POST['first'] ))
        $args['meta_query'][] =
            array(
                'relation'  => 'AND',
                array(
                    'key'     => $_POST['categoryfilter'],
                    'value'   => 0,
                    'compare' => '>=',
                    'type'    => 'NUMERIC',
                ),
                array(
                    'key'     => $_POST['categoryfilter'],
                    'value'   => 50,
                    'compare' => '<=',
                    'type'    => 'NUMERIC',
                ),
            );
if(isset($\u POST['first']))
$args['meta_query'][]=
排列(
'关系'=>'和',
排列(
'key'=>$\u POST['categoryfilter'],
“值”=>0,
'比较'=>'>=',
'类型'=>'数值',
),
排列(
'key'=>$\u POST['categoryfilter'],
“值”=>50,

'compare'=>'我认为这只是如何创建元查询的问题。您正在将其存储在子数组中,但不应该。请尝试如下更新:

if(isset($\u POST['first']))
$args['meta_query']=
排列(
'关系'=>'和',
排列(
'key'=>$\u POST['categoryfilter'],
“值”=>0,
'比较'=>'>=',
'类型'=>'数值',
),
排列(
'key'=>$\u POST['categoryfilter'],
“值”=>50,

'compare'=>'我认为这只是如何创建元查询的问题。您正在将其存储在子数组中,但不应该。请尝试如下更新:

if(isset($\u POST['first']))
$args['meta_query']=
排列(
'关系'=>'和',
排列(
'key'=>$\u POST['categoryfilter'],
“值”=>0,
'比较'=>'>=',
'类型'=>'数值',
),
排列(
'key'=>$\u POST['categoryfilter'],
“值”=>50,
'比较'=>'
if( isset($_POST['first'] ))
        $args['meta_query'][] =
            array(
                'relation'  => 'AND',
                array(
                    'key'     => $_POST['categoryfilter'],
                    'value'   => 0,
                    'compare' => '>=',
                    'type'    => 'NUMERIC',
                ),
                array(
                    'key'     => $_POST['categoryfilter'],
                    'value'   => 50,
                    'compare' => '<=',
                    'type'    => 'NUMERIC',
                ),
            );