Tengo una vista de página con filtros expuestos. Uno de los filtros es el vocabulario de términos, y esa es la lista desplegable, el usuario puede seleccionar solo una categoría (término).
Quiero establecer programáticamente un término de la lista desplegable cuando vengo de una URL específica. Intenté con views_query_alter
dónde $category
está tid
.
$set_exposed_input = array();
$set_exposed_input['field_category_tid'] = $category;
if ($set_exposed_input) {
$view->set_exposed_input($set_exposed_input);
}
Respuestas:
Para drupal 7 puedes usar
Esto es
Para un ejemplo completo, puedes probar esto:
Otra forma es usar la función set_option de vistas
fuente
Establezca el valor del filtro expuesto de esta manera:
fuente
con Drupal 7.54 cuando desea procesar el filtro expuesto mediante programación, así es como lo hace cuando tiene un campo de valores múltiples. La solución para ver cómo pasar el filtro expuesto es seguir cómo se hace la URL.
Aquí: view_name? Alias [1] = 1
Puedes ejecutar esto desde donde quieras. Preferiblemente del archivo del módulo.
fuente