web-dev-qa-db-fra.com

Comment éviter de charger un module dans une vue sans créer un élément de menu pour cette vue

J'ai plusieurs modules configurés pour s'afficher sur toutes les pages sauf celles sélectionnées. Un élément de menu régulier est attribué à la plupart des vues de mon composant. Je peux donc les ajouter à la liste "MAIS la liste sélectionnée".

Maintenant, j'ai aussi une vue sans élément de menu. Étant donné que cette vue est appelée avec différents paramètres, je ne peux pas utiliser l'option de menu masqué, car la fonction GetMenu()->GetItems('link' ...) ne trouvera PAS l'élément de menu si elle se termine par ..&cid=12 une fois que, &cid=13 la prochaine fois.

Je devrais créer 30 ou 50 éléments de menu cachés, pour chaque paramètre .. puis les exclure du module. Je préférerais ne pas faire ça.

Existe-t-il un autre moyen d'éviter de charger un module dans ma vue de composant?

EDIT: Je sais que je peux utiliser du code pour passer à un modèle sans les positions de module en question, mais comme il s’agit d’un hack, je préférerais ne pas recourir au commutateur de modèles.

2
Andreas

Je suis sûr que vous pouvez utiliser Advanced Module Manager à cette fin. Vous pouvez appliquer de nombreuses règles différentes à vos modules afin de contrôler quand et où vos modules doivent être affichés ou masqués.

Dans votre cas (si je comprends bien votre question), vous pouvez masquer vos modules pour certains composants :

Hide module for component

Sélectionnez simplement "Exclure", localisez votre ou vos composants dans la liste et enregistrez votre module.

J'espère que ça t'as aidé.

2
johanpw