Ne pas exécuter une vue si les filtres exposés sont vides

Lorsqu'une vue utilise des filtres exposés, par défaut Views rend la vue avec tous les résultats. Pour que la vue soit rendue vide :

  • Ajouter un argument "Global: Null"
  • Action to take if argument is not present: Provide default argument
  • Default argument type: Fixed entry
  • Default argument: let it blank
  • Validator: PHP code
  • PHP validate code:
    if (!empty($view->exposed_input) && count($view->exposed_input) == 1 && isset($view->exposed_input['destination'])) {
    return FALSE;
    }
    return (!empty($view->exposed_input));
  • Action to take if argument does not validate: Display empty text (if you want the view to be rendered)

Et voilà !