摘要:
为您的社区中的每个用户提供一个特定的主页(“主页类别”)。
它允许您拥有一个单一的 Discourse,其中用户根据其主要群组拥有特定的“主页”(即类别)。
GitHub: 代码库 https://github.com/merefield/discourse-category-home
安装: 遵循 插件安装指南。
喜欢这个插件吗?请在 GitHub 上
它! ![]()
功能
仅使用普通 Discourse 的可用界面元素,使其成为一个健壮、易于维护的解决方案。
配置
使用普通的 Discourse 功能:
- 决定您想要多少个类别“主页”
,如果它们不存在则创建它们:
- 除非它们已经存在,否则为每个类别创建一个独立的群组
- 适当地将用户添加到每个群组
- 将该群组设置为每个用户的“主要群组”
- 为每个群组授予其相应类别的权限。
您已完成! ![]()
现在,每当有人导航到您的社区主页时,他们都会被重定向到其主要群组有权限访问的类别。
注意:这遵循一个您必须遵守的简单规则:如果某人拥有注册的主要群组,并且该群组仅对一个类别有权限,则会将其重定向到该类别作为其主页。
以这种方式使用主要群组有许多优点,正如您可能从上面的链接中注意到的那样,尤其是:
- 您可以为某人授予头衔
- 您可以为他们提供装饰
- 您可以为他们的帖子设置样式
其他注意事项
通过独特地设置您的类别主页,例如使用:Category Banners
检查不同的类别/主要群组权限
要检查您的主要群组是否仅与一个类别相关联,您可以使用 Discourse 的此便捷的开箱即用功能,例如:
列表中只有一个类别,很好! ![]()
技术部分
所使用的确切逻辑是:
return CategoryGroup.where(group_id: primary_group).first.category_id
虽然可能可以“弄虚作假”,但如果您期望此功能正常工作,但却在多个类别上使用该主要群组,那么这样做可能不明智,因此请牢记这一点并遵循我的建议。
提供更多灵活性
我愿意听取关于如何配置此行为的建议,但我希望限制定制设置的数量,并尽可能多地使用开箱即用的行为和数据。如果您有一个简单、优雅的解决方案,请告诉我。
无法安装插件/主要群组功能不适用于您?
如果您无法安装插件(因为您使用的是受限托管计划),或者发现主要群组配置不适用于您,请考虑此主题组件替代方案:https://meta.discourse.org/t/custom-homepage-for-groups/199623,它需要更多定制配置,但侵入性较小。
