Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Wordpress WP\用户\查询搜索_Php_Wordpress - Fatal编程技术网

Php Wordpress WP\用户\查询搜索

Php Wordpress WP\用户\查询搜索,php,wordpress,Php,Wordpress,我正在尝试编写一个用户搜索查询,我有位置和搜索关键字(用户名) 我需要搜索所有用户,与姓氏或名字匹配的搜索关键字为一个 特定运动 我的代码在这里 $args = array( 'meta_query' => array( 'relation' => 'AND', 0 => array( 'key' => 'last_name', 'value' => $search_

我正在尝试编写一个用户搜索查询,我有位置和搜索关键字(用户名)

我需要搜索所有用户,与姓氏或名字匹配的搜索关键字为一个 特定运动 我的代码在这里

$args = array(
    'meta_query' => array(
        'relation' => 'AND',
        0 => array(
            'key'     => 'last_name',
            'value'   => $search_string,
            'compare' => 'LIKE'
        ),
        1 => array(
            'key'     => 'first_name',
            'value'   => $search_string,
            'compare' => 'LIKE'
        ),
        2 => array(
            'key'     => 'user_city',
            'value'   => $Location,
            'compare' => 'LIKE'
        ),
    ),

 );

$users = new WP_User_Query( $args);
$users = $users->get_results();

但我想要“关系”,或者名字、姓氏、关系和位置,我该怎么做

我认为在wp\u查询中不可能有多个关系字段。请参考

作为替代方案,您可以查看pre_user_query,它是在调用查询之前调用函数的钩子

add_filter( 'pre_user_query', 'some_function' );

function some_function () {
//do custom query altering here. 
}
试试这个

$user_ex = explode(' ', $search_string);
    if($user_ex[1]) {
    $name_array = preg_split("/[\s,]+/", $search_string_user);
        $args = new WP_User_Query( array(
        'meta_query' => array(
            'relation' => 'OR',
            array(
                'relation' => 'OR',
                array(
                    'key' => 'user_city',
                    'value' => $search_string,
                    'compare' => 'LIKE'
                ),
            ),
            array(
                'relation' => 'AND',
                array(
                    'key' => 'first_name',
                    'value' => $name_array[0],
                    'compare' => 'LIKE'
                ),
                array(
                    'key' => 'last_name',
                    'value' => $name_array[1],
                    'compare' => 'LIKE'
                ),
            ),
        ),
    }
请使用

$args = array( 'meta_query' => 
    array(
    array( 
       'relation' => 'OR', 
       array( 'key' => 'last_name', 'value' => $search_string, 'compare' => 'LIKE' ), 
       array( 'key' => 'first_name', 'value' => $search_string, 'compare' => 'LIKE' ),
    ), 
    array( 'key' => 'user_city', 'value' => $Location, 'compare' => 'LIKE' ), ), 
);