Obtener resultados de meta_query() entre dos números
24 ene 2016, 15:03:32
Vistas: 17.9K
Votos: 7
Tengo valores como:
if ( ! empty( $_GET['filter-area'] ) ) {
$f = $_GET['filter-area'];
preg_match_all('!\d+!', $f, $matches);
foreach($matches as $key) {
$first_val = $key[0];
$second_val = $key[1];
}
}
Ahora necesito buscar para obtener todos los datos entre estos dos valores.
Así que intenté de esta manera, pero solo toma un valor.
if ( ! empty( $_GET['filter-area'] ) ) {
$meta[] = array(
'key' => REALIA_PROPERTY_PREFIX . 'attributes_area',
'value' => $first_val,
'compare' => '>=',
'type' => 'NUMERIC',
);
}
¿Cómo puedo buscar por dos valores?

Almeeraj Tourism
71
Todas las respuestas a la pregunta
1
3
Se pueden comparar múltiples valores meta con BETWEEN
usando un valor de tipo array:
'meta_query' => array(
array(
'key' => REALIA_PROPERTY_PREFIX .'attributes_area',
'value' => array( $first_val, $second_val ),
'type' => 'numeric',
'compare' => 'BETWEEN',
), // array interno.
), // array externo.
Puedes ver esto en la Documentación para Desarrolladores.

Mayeenul Islam
12.9K
24 ene 2016 15:53:04
Comentarios
En mi caso tuve que pasar $first_val
y $second_val
en floatval()
para que funcionara.

13 nov 2018 18:46:53
Preguntas relacionadas
5
respuestas