Estoy trabajando en un formulario de búsqueda que maneja tanto un término de búsqueda como una lista desplegable de categorías. He añadido ‘Todas las ubicaciones’ a 'show_option_all'
, que será mi predeterminado. Cuando se selecciona esto, quiero que los resultados de la búsqueda muestren todos los términos en mi taxonomía personalizada (ubicación).
Los resultados de la búsqueda parecen funcionar cuando se selecciona una ubicación/taxonomía de la lista desplegable de categorías. Pero si lo mantengo en ‘Todas las ubicaciones’, no se devuelven resultados (es NULL). ¿Cómo puedo hacer el 'tax_query'
'terms'
devolver todos los ID si se selecciona ‘Todas las ubicaciones’?
// SEARCH FORM
<form action="/search" method="get">
<input type="text" name="search_text">
<?php wp_dropdown_categories( array(
'name' => 'search_location',
'taxonomy' => 'location',
'hierarchical' => 1,
'hide_if_empty' => true,
'show_option_all' => __('All Locations'),
)); ?>
<button type="submit" name="">Search</button>
</form>
// SEARCH RESULT QUERY
if($_GET['search_text'] && !empty($_GET['search_text'])) {
$text = $_GET['search_text'];
}
if($_GET['search_location'] && !empty($_GET['search_location']))
{
$search_location = $_GET['search_location'];
}
$args = array(
'post_type' => $type,
'posts_per_page' => -1,
'tax_query' => array(
array(
'taxonomy' => 'location',
'field' => 'term_id',
'terms' => $search_location,
)
),
's' => $text
);
$query = new WP_Query($args);
.