neounix
(Dark Matter)
18
你好 @jrgong
通过插件实现这一点并不难,想必你对此也很熟悉。
基本上,你可以创建一个员工列表(通过邮箱、用户名等)作为全局设置,类似于 Discourse 通过邮箱地址定义开发者的方式。
然后,你可以在某些补丁中使用该 GlobalSetting 来允许你感兴趣的两种使用场景。
你的第一个使用场景:以员工身份自定义主题,我认为通过核心层面的“猴子补丁”(monkey patch)实现相对直接。
至于你的第二个使用场景,只需少量工作,你就可以 fork 这个插件,并重新设计该插件中的路由访问约束(以及任何所需的其他更改):
由于广告插件的约束是内置于插件中的,因此最好直接修改该代码,以便根据你的 RBAC 策略,允许你“授权”的员工访问该插件中你希望开放的模块。
换句话说,如果你愿意编写代码,你提出的两个需求都是可以实现的;当然,你也可以在 Marketplace 频道中向精通 Discourse 插件开发的专业人士寻求帮助。