J'ai passé des jours à essayer de déterminer une manière propre de procéder comme suit:
- Afficher une liste de tous les termes de niveau supérieur dans un vocabulaire avec des liens vers leurs termes enfants
- En cliquant sur un lien, accédez à une liste des enfants de ces termes.
- Ad infinitum jusqu'au terme de niveau le plus bas, pour lequel une liste de nœuds marqués avec ce terme sera affichée.
Cela semble être une fonctionnalité assez courante, mais je ne trouve aucune solution capable de gérer une profondeur arbitraire, en particulier si tous les arbres de termes ne descendent pas à la même profondeur.
Une solution idéale serait celle qui utilise Views 3, Contexts, EntityFieldQueries ou tout autre élément bien pris en charge dans Drupal 7.
Je suis capable de faire presque exactement ce que je veux en créant une vue simple avec trois nœuds: les relations de terme (terme, parent du terme et parent du terme) et les utiliser pour des filtres contextuels séquentiels. Le seul problème avec cela est que s'il y a un nœud avec un chemin de terme trop peu profond, il est répertorié comme "non catégorisé" et génère un lien mort. Au lieu de faire cela, j'aimerais qu'il soit lié au prochain terme enfant disponible.
la source
Remarque: Vous devez décocher "Lier ce champ à sa page de termes de taxonomie"
Lorsque vous visitez la page de visualisation, vous voyez les enfants du parent supérieur; selon l'exemple que vous obtiendrez:
Lorsque vous cliquez sur term1, vous obtenez les enfants. Jusqu'à ce que vous atteigniez le terme 1.1.1. Vous n'obtiendrez aucun résultat si vous cliquez sur term1.1.1 pour le moment. Pour y parvenir, nous devons créer un bloc de vue supplémentaire dans la vue ci-dessus.
Remarque: Lorsque vous les supprimiez assurez-vous de sélectionner le contenu de cette page (Over Ride) dans la liste déroulante en haut à côté d' autres sages les champs et les filtres contextuels vous avez créé dans la page serait également parti .
Enregistrez la vue et vous avez terminé.
la source
Je pense que ce que vous voulez, c'est Views Tree , un module contrib qui utilise Views pour construire un arbre de termes de taxonomie.(Donnez-moi une seconde et je vous écrirai un rapide guide d'utilisation des champs fiscaux)Apparemment, ce module a un problème qui l' empêche de travailler avec des termes de taxonomie. Huer.
Cela dit, j'ai trouvé le code suivant qui semble faire ce que vous voulez (vous pouvez le faire afficher / masquer des éléments via un code jQuery assez rudimentaire):
Via " Listes de catégories imbriquées avec liens vers des pages ".
la source
Si vous voulez simplement avoir un ensemble de pages dynamiques de navigation dans la taxonomie, alors j'irais de la manière suivante, nécessitant 3 vues + module d' affichage de taxonomie qui vous permet d'utiliser des vues pour afficher le contenu des
taxonomy/term/%
pages:Comme les vues 1 et 2 auront probablement un thème similaire, vous pouvez envisager de les fusionner en tant qu'écrans dans une seule vue - ce serait plus facile à gérer.
J'ai utilisé avec succès cette approche pour ma taxonomie. Heureusement, il était homogène à chaque niveau - une branche donnée se terminait par des feuilles (nœuds) ou des branches (termes), mais pas les deux. S'il s'agit d'une limitation, veuillez d'abord la tester.
Il s'agit bien sûr d'un "pseudo-code". Vous voudriez mettre en place des validations et des filtres, ainsi qu'un joli motif de pathauto d'aspect logique pour refléter la structure.
la source