Submitted by Aya on
Bonjour,
Voici mon problème:
Pour faire simple j'ai une vue qui m'affiche les nodes en fonction d'un terme de taxonomy.
Je voudrais à partir de cette vues formuler une condition qui me permet de dire "Si aucun résultat retourné alors afficher cette autre vue".
En gros si la vue ne retourne pas de résultat en afficher une autre.
Donc ma question: Est-ce possible directement avec le module view (ou autre module annexe) ou faut-il passer par les templates en chargeant une vue et si celle-ci ne retourne aucun résultat en afficher une autre?
J'espère avoir été assez clair et précis,
En attente d'une solution
Cordialement, Aya
À priori je te conseillerais
Permalien Soumis par mdupont@drupal.org le 9 Décembre, 2010 - 22:28
À priori je te conseillerais de gérer ça au niveau du template, et utilisant views_embed_view() pour charger la vue alternative si la première est vide.
Bonjour, alors j’ai tester
Permalien Soumis par Aya le 10 Décembre, 2010 - 11:25
Bonjour,
alors j'ai tester en appelant mes vues dans une fonction.
Voila le résultat:
$viewname = 'High_Tech';
// Chargement de notre vue
$view = views_get_view ($viewname);
$view->set_display('page_1');
$view->set_arguments(array('1'));
$output = $view->preview();
return $output;
Pour faire cours, sa ne marche pas.
Pour faire long, si j'appelle une vue sans paramètre cela fonctionne mais aussitôt que je passe des paramètres plus aucune données n'est retournées. j'ai bien vérifié qu'il y en avait.
Donc voila, j'en suis la. si quelqu'un a une idée je suis preneur.
Je poursuit mes tests et je vous tiens au courant.
Cdt, Aya
Edit: Autant pour moi ça fonctionne j'avais quelques autres erreurs dans la suite de mon code qui fesait planter mon affichage. Merci de votre aide.