Member-only story
Cómo Establecer Un Valor Predeterminado Para Un Filtro Expuesto En Una Vista En Drupal
Usando hook_views_pre_build
A veces, puede que necesites establecer un valor predeterminado en un filtro expuesto en una vista. Todavía no es posible hacerlo directamente en la vista, lo que creo que debería implementarse en el módulo en el futuro, pero por ahora, podemos usar hook_views_pre_build para lograrlo.
En este ejemplo, para el id de vista content y el display page_1, establezco un valor predeterminado para el filtro expuesto langcode_1. Esto se aplicará solo si langcode_1 aún no tiene ningún valor (reemplaza custom_module por el nombre de tu módulo):
/**
* Implements hook_views_pre_build().
*/
function custom_module_views_pre_build(ViewExecutable $view) {
// Set exposed filter default value to "All" in /admin/content.
if ($view->id() == 'content' && $view->current_display == 'page_1') {
$exposed_input = $view->getExposedInput();
// Check if langcode_1 is not set, then set it to the default "All".
if (empty($exposed_input['langcode_1'])) {
$exposed_input['langcode_1'] = 'All';
$view->setExposedInput($exposed_input);
}
}
}
👉 Descubre más sobre mí aquí: https://sergioguardiola.net 🔥