web-dev-qa-db-fra.com

Quand utiliser la liste (texte) ou la taxonomie?

Cela peut être une question stupide, mais je suis curieux de savoir quel est l'avantage d'utiliser un champ de sélection multiple de liste (texte) sur un champ de référence de terme de taxonomie. Ils semblent tous deux remplir à peu près la même fonction de donner des options à choix multiples prédéterminées, mais la taxonomie a l'avantage supplémentaire de vous permettre d'ajouter des termes après que le contenu a été écrit dans la base de données.

Existe-t-il donc une bonne directive pour que l'un utilise l'un ou l'autre? (Et en particulier lorsque la liste (texte) a plus de sens que la référence à un terme de taxonomie?).

12
Jay

La structure et la dynamique sont les mots clés de l'OMI pour choisir la taxonomie. J'ai récemment eu cette question à me poser lors du marquage des entreprises avec des régions géographiques. Mon premier choix a été de préparer la taxonomie avec la liste des régions. Bientôt, cela s'est avéré être une complication excessive. Les régions ne changent presque jamais leurs noms et ne changent presque jamais leur structure/parents. J'ai donc jeté la taxonomie et décidé d'utiliser une liste plate (texte). Il est désormais beaucoup plus facile de manœuvrer les régions dans une vue. Donc - si votre liste est statique et plate - optez pour une liste.

10
Artur

La taxonomie a des problèmes de performances lorsqu'elle évolue car les requêtes SQL s'allongent; si vous utilisez des filtres de vues, les listes de sélection seront plus rapides que la taxonomie.

8
Patrick Kenny

Les principales différenciations que j'ai apprises sont les suivantes:

  • voulez-vous que les utilisateurs ajoutent à la liste de valeurs, pas seulement les administrateurs de site ou, l'ajout à la liste sera-t-il un besoin semi-régulier d'administrateurs de site pairs?
  • voulez-vous utiliser la valeur comme un élément organisateur de contenu lui-même (comme suggéré ci-dessus par @Artur, créer des pages de tout le contenu qui partage ce terme, avec différentes mises en page, comme une page de produit: afficher tous les vêtements XL; ou des nouvelles, afficher tous les sports)
  • les données sont-elles du tout hiérarchiques? (par exemple: sous-catégories où vous voudrez parfois capturer la catégorie parent ou les enfants séparément à d'autres)

Si non à tout ce qui précède, utilisez select/text. Si oui, utilisez des termes de taxonomie. Dans mon expérience, vous utiliserez généralement select/text. Ça fait toujours mal, mais c'est généralement vrai.

7
Renee

Un vainqueur clair à mon avis serait un terme de taxonomie, plus de puissance, de petits inconvénients.

0
Marko Blazekovic