J’aimerais rendre certains sujets des sous-sujets d’autres.
Par exemple, si j’ai le « Sujet A », je placerai un bouton « Créer un sous-sujet » sur la page du Sujet A. Cela permettra à l’utilisateur de créer un nouveau sujet, « Sujet B », qui sera un enfant du Sujet A.
Du point de vue de l’expérience utilisateur, cela signifie :
Je pourrais également ajouter un bouton sur la page du Sujet A pour « Voir tous les sous-sujets du Sujet A », ce qui mènerait à une liste des sous-sujets du Sujet A, comme le Sujet B et tout autre sujet qui en est un enfant.
Quelle est la meilleure façon de procéder ? (Je suppose que je devrai le faire dans un plugin, ce qui ne me pose pas de problème.)
Notez que je ne cherche qu’un seul niveau de sous-sujet, pas plusieurs.
Voici quelques détails sur les possibilités que j’envisage :
Catégories (bien que ce ne soit probablement pas la meilleure approche)
Les catégories offriraient une fonctionnalité similaire à celle que j’ai en tête, mais cela pourrait devenir trop lourd dès qu’il y aura un nombre raisonnable de sujets avec des sous-sujets (il semble excessif d’avoir essentiellement une nouvelle catégorie pour chaque sujet parent).
ou
Étiquettes
La meilleure idée qui me vient actuellement est d’utiliser les étiquettes. Ainsi, lorsque vous cliquez sur « Créer un sous-sujet » sur le Sujet A, un nouveau sujet s’ouvre, et j’ajoute programmatiquement une étiquette cachée, comme « Sujet-A », qui fait référence au Sujet A. Ensuite, lorsque vous cliquez sur « Voir tous les sous-sujets » du Sujet A, une recherche est effectuée pour l’étiquette « Sujet-A ».
Cela semble assez propre, à l’exception du fait qu’il y aura beaucoup d’étiquettes (essentiellement une étiquette par sujet principal, ce qui pourrait devenir très nombreux).
ou
Champs personnalisés pour les sujets
Une autre possibilité que j’ai envisagée est de créer un champ personnalisé pour les sujets, qui serait un tableau contenant les identifiants des sous-sujets de ce sujet. Cela pourrait aussi fonctionner, mais serait probablement légèrement plus complexe à coder.
Par exemple, je devrais mettre à jour le champ personnalisé du sujet principal uniquement après la création d’un sous-sujet ; et je devrais créer un nouveau type de recherche – rechercher tous les sujets contenus dans le tableau du champ personnalisé du sujet principal – au lieu d’utiliser simplement la fonctionnalité de recherche par étiquette déjà intégrée.
Y a-t-il une autre solution que je n’aurais pas envisagée ?