摘要
本文档主题涵盖如何在 Discourse 中撰写功能请求:分步指南。
第 1 步:开始之前
所以,你有一个绝佳的 Discourse 功能创意?太棒了!以下是如何有效地与团队和社区分享它的方法。在提交功能请求之前,请花一点时间搜索现有讨论,看看你的想法是否已被提出或实现。你可以通过以下几种方式完成:
- 查看 Contribute > Feature 分类
- 点击页面右上角的
图标以打开 搜索 功能。你可以使用高级过滤器按分类和标签进行筛选。 - 浏览带有 pr-welcome 标签的主题 — PR 指的是 GitHub 上的拉取请求,是开发者向项目引入新代码的一种方式。
- 浏览带有 completed 标签的主题
- 查看 Customization > Plugin 和 Customization > Theme component 分类
如果你的功能建议已被列出,你可以通过投票使其请求更显眼、点赞,并回复补充想法或使用案例,进一步说明该功能为何应被添加,从而支持它。
找不到任何关于你想法的提及?你可以创建一个功能请求。
第 2 步:基础知识
标题
主题标题需要具有信息量,但同时不能过长。请求的范围应一目了然。
分类
创建新主题时,请选择 Contribute > Feature 分类。
标签
标签用于分组和分类功能,因此,为了保持请求的有序性,为你的主题添加适当的标签对跟踪工作非常有帮助。例如,所有与 chat 插件相关的内容都统一在一个标签下。
第 3 步:撰写你的请求
撰写一个良好的功能请求非常重要,它有助于 Discourse 团队快速识别需要改进的领域。
请记住,在创建功能请求时,你是在推销你的想法,并说服他人你的功能创意是有充分依据的。解释为什么你希望将你的功能添加到:社区、你自己以及团队中。
在主题正文中,简明扼要地说明你请求的功能。要具体且具有描述性,避免模糊或开放式表述。
提供背景和解释
为你的功能请求提供背景和解释。
- 对你所请求功能的清晰描述
- 包括你当前遇到的问题或使用案例,以及你的功能将如何解决这些问题
- 任何相关的背景信息或你已完成的调研
提供示例和截图(可选)
如果适用,请提供示例、线框图或截图,以帮助说明你的功能请求,使他人能够轻松想象你的想法。
与社区互动
创建功能请求后,通过回复问题和反馈与成员互动。这将提高你的请求被考虑的可能性。
接下来会发生什么
提交功能请求后,它将由社区和 Discourse 团队进行审查。你可以期待:
- 来自社区的反馈和讨论
- Discourse 工作人员的回复,说明你的请求是否可行并正在考虑中
- 你的功能请求可能在未来的更新中得到实现
想确保你的功能被实现吗?
在某些情况下,功能请求可能不适合核心开发。你可以 阅读功能决策是如何制定的。如果你无法自行开发该功能,仍有一些方法可以增加其被实现的机会。
成为 discourse.org 客户
如果你希望通过在我们这里托管网站来资助开发 — 我们总是优先处理客户请求的开发时间表 — 这是一种更快的实现方式。企业客户 可以按小时费率向核心团队请求定制功能(通常以插件形式)。
赞助一个“pr-welcome”任务
我们有一份全面的 pr-welcome 主题列表。这些是我们非常希望完成但目前没有足够带宽自行处理的任务。赞助他人完成这些任务是参与其中的绝佳方式,任何 对 Discourse 的贡献 都备受感激。
在市场提供付费工作
如果你需要一个对你的业务至关重要的插件,可以在 Marketplace 上发布付费任务广告。尽可能提供详细信息,包括截图和预算。你也可以找到提供标准化微服务的自由职业者,例如“一次性安装”或“个性化主题”。
总体建议
一般注意事项
建议
- 保持你的请求简洁,专注于单一功能
- 避免对实现或技术细节做出假设
- 展示愿意根据社区反馈妥协和调整你的想法
不建议
- 在一个主题中包含多个功能
- 让他人对你的请求范围产生疑问
常见问题解答
问:如果我没有时间创建详细的功能请求怎么办?
答:如果当下无法创建详细请求,请仔细思考你想表达的内容,稍后再试。这能确保你提出最有力的案例,从而提高他人支持你的请求并使其被添加的机会。
问:我应该在哪里发布我的功能请求?
答:使用适当的分类 — 功能请求应放在 #feature::category 分类中。
问:如果我不确定该使用什么标签怎么办?
答:虽然标签通常与插件和主题组件名称匹配以方便使用,但如果标签留空,团队成员或常客会为你的主题添加合适的标签。
请在你的请求中保持尊重和开放的心态。避免利用功能请求表达挫败感。任何不当的语言或行为都可能导致你的请求被延迟或忽略。
附加资源
- 分类:Contribute > Feature, Marketplace, Customization > Plugin, Customization > Extras, Customization > Theme, Customization > Theme component
- 标签:current-projects, release-notes, pr-welcome, planned
- https://meta.stackexchange.com/questions/258136/how-do-i-write-a-good-feature-request
- How do we decide what goes into each release of Discourse?
- Discourse pricing | Discourse - Civilized Discussion
