Interogare meta_query pentru get_users

14 ian. 2013, 11:27:44
Vizualizări: 21K
Voturi: 4

Nu reușesc să fac meta_queries să funcționeze corect cu get_users(). Oricât încerc, nu-mi dau seama ce fac greșit.

    $args = array(
        'meta_query'   =>

            array(
                'relation' => 'AND',

            array(
                'key' => 'minbeds', // număr minim de paturi
                'value' => $rooms,
                'compare' => "<=",
                'type' => 'numeric'
            ),
            array(
                'key' => 'maxbeds', // număr maxim de paturi
                'value' =>  $rooms,
                'compare' => "=>",
                'type' => 'numeric'
            )
           array(
                'key' => 'minprice', // preț minim
                'value' => $price,
                'compare' => "<=",
                'type' => 'numeric'
            ),
            array(
                'key' => 'maxprice', // preț maxim
                'value' => $price,
                'compare' => "=>",
                'type' => 'numeric'
            )
         )
    );

    $users = get_users( $args );
0
Toate răspunsurile la întrebare 1
1

Parametrul meta_query este un array de array-uri,

    $args = array(
        'meta_query'=>

         array(

            array(

                'relation' => 'AND',

            array(
                'key' => 'minbeds', // numărul minim de paturi
                'value' => $rooms, // numărul de camere
                'compare' => "<=", // mai mic sau egal
                'type' => 'numeric' // tip numeric
            ),

            array(
                'key' => 'maxbeds', // numărul maxim de paturi
                'value' =>  $rooms, // numărul de camere
                'compare' => ">=", // mai mare sau egal
                'type' => 'numeric' // tip numeric
            ),

           array(
                'key' => 'minprice', // prețul minim
                'value' => $price, // prețul
                'compare' => "<=", // mai mic sau egal
                'type' => 'numeric' // tip numeric
            ),

            array(
                'key' => 'maxprice', // prețul maxim
                'value' => $price, // prețul
                'compare' => ">=", // mai mare sau egal
                'type' => 'numeric' // tip numeric
            )
          )
       )
    );

    $users = get_users( $args ); // obține utilizatorii în funcție de argumente
14 ian. 2013 11:38:12
Comentarii

Nu ar trebui ca "relation" să fie în afara acelui array? Corectează-mă dacă greșesc, dar cred că "relation" => "AND" ar trebui să fie în prima dimensiune a array-ului.

Azamat Azamat
14 mar. 2021 19:47:43