Résumé :
Donnez Ă chaque utilisateur une page dâaccueil spĂ©cifique (âCatĂ©gorie dâaccueilâ) dans votre communautĂ©.
Cela vous permet dâavoir un seul Discourse dans lequel les utilisateurs ont des âpages dâaccueilâ spĂ©cifiques (lire : CatĂ©gorie) dĂ©terminĂ©es par leur groupe principal.
GitHub : Référentiel https://github.com/merefield/discourse-category-home
Installer : Suivez le guide dâinstallation de plugin.
Vous appréciez ce plugin ? Merci de le
sur GitHub ! ![]()
Fonctionnalités
En utilisant uniquement les Ă©lĂ©ments dâinterface disponibles dâun Discourse normal, cela en fait une solution robuste et facile Ă maintenir.
Configuration
En utilisant la fonctionnalité normale de Discourse :
- DĂ©cidez du nombre de âpages dâaccueilâ de catĂ©gorie
que vous souhaitez, crĂ©ez-les si elles nâexistent pas :
- Sauf si elles existent dĂ©jĂ , crĂ©ez un groupe distinct pour chacune dâelles
- Ajoutez les utilisateurs à chacun de ces groupes de maniÚre appropriée
- Définissez ce groupe comme groupe principal de chaque utilisateur
- Autorisez chaque groupe à accéder à sa catégorie respective.
Vous avez TERMINĂ ! ![]()
DĂ©sormais, chaque fois que quelquâun naviguera vers la page dâaccueil de votre communautĂ©, il sera redirigĂ© vers la catĂ©gorie pour laquelle son groupe principal est autorisĂ©.
NB : Ceci suit une rĂšgle simple Ă laquelle vous devez adhĂ©rer : Si quelquâun a un groupe principal enregistrĂ© et que celui-ci est autorisĂ© pour une seule catĂ©gorie, il sera redirigĂ© vers cette catĂ©gorie comme page dâaccueil.
Lâutilisation dâun groupe principal de cette maniĂšre prĂ©sente un certain nombre dâavantages, comme vous lâavez peut-ĂȘtre remarquĂ© dans le lien ci-dessus, notamment :
- Vous pouvez donner un titre Ă quelquâun
- Vous pouvez lui donner un Flair
- Vous pouvez styliser ses messages
Autres considérations
Rendez vos pages dâaccueil de catĂ©gorie plus percutantes en les stylisant de maniĂšre distincte, par exemple avec : Category Banners
Vérification des autorisations distinctes de catégorie/groupe principal
Pour vĂ©rifier que votre groupe principal nâest associĂ© quâĂ une seule catĂ©gorie, vous pouvez utiliser cette fonctionnalitĂ© intĂ©grĂ©e pratique de Discourse, par exemple :
Il nây a quâune seule catĂ©gorie dans la liste, câest bien ! ![]()
Le cÎté technique
La logique exacte employée est la suivante :
return CategoryGroup.where(group_id: primary_group).first.category_id
Bien quâil soit possible de le âtruquerâ, il est probablement dĂ©conseillĂ© si vous utilisez ce groupe principal dans plus dâune catĂ©gorie si vous vous attendez Ă ce que cela fonctionne, alors gardez cela Ă lâesprit et suivez ma recommandation.
Offrir plus de flexibilité
Je suis ouvert aux suggestions sur la maniĂšre de configurer ce comportement, mais jâaimerais limiter la quantitĂ© de paramĂštres personnalisĂ©s et utiliser autant de comportements et de donnĂ©es prĂȘts Ă lâemploi que possible. Si vous avez une solution simple et Ă©lĂ©gante en tĂȘte, faites-le moi savoir.
Impossible dâinstaller des plugins / La chose du groupe principal ne fonctionne pas pour vous ?
Si vous ne pouvez pas installer de plugins (parce que vous ĂȘtes sur un plan dâhĂ©bergement restrictif), ou si la configuration du groupe principal ne vous convient pas, envisagez cette alternative de composant de thĂšme : Custom Homepage for Groups qui nĂ©cessite une configuration plus personnalisĂ©e, mais est moins invasive.
