Discourse 是高度可定制的,使您能够通过主题修改其外观的几乎所有方面。
为了保持与 Discourse 更新和新功能的兼容性,所有主题都需要偶尔进行维护。维护的频率取决于定制的复杂程度和类型。通过遵循以下准则,您可以最大限度地减少主题的维护工作:
- 检查官方的 主题 或 主题组件,以匹配您所需的功能。这些会随 Discourse 一起更新。它们也可以作为您自己定制方法的示例。
- 使用管理后台 → 自定义 → 文本功能,通过搜索特定文本并在其中更新,来替换界面文本。
- 主题 CSS 是累加的,允许您覆盖默认样式而无需直接编辑它们。这种方法提高了 CSS 的可维护性,并最大限度地减少了与更新的冲突。
- 使用像 Git 这样的版本控制系统,配合 GitHub、GitLab 或 Bitbucket 来跟踪更改。虽然管理后台 → 自定义 → 主题中的 HTML 和 CSS 编辑器对于细微调整很方便,但版本控制系统可以更容易地跟踪和排除更复杂的更改的故障。
- 对于高级定制,为新功能创建独立模块,并通过 插件插口 将它们集成。Discourse 使用 Ember.js,因此构建 Ember 组件是理想的选择。这种方法可以隔离自定义功能,减少维护,并有助于避免与 Discourse 更新发生冲突。
覆盖主题中默认的 Discourse JavaScript 和 HTML 模板应作为最后的手段,因为这些更改更有可能与 Discourse 更新不兼容,难以排除故障,并且更容易导致错误而造成停机。
有关使用和构建 Discourse 主题的更多信息,请随时在我们的 Meta 社区中提问,并查阅我们的主题指南:
- Discourse 主题使用入门指南
- Discourse 主题设计指南
- Discourse 主题开发者指南
- 如何启用安全模式以排除主题和插件问题的故障
- 主题和主题组件的结构
- 创建和共享字体主题组件
- 如何创建和共享配色方案
- 如何在主题中使用 Discourse 核心变量
- 如何向 Discourse 主题添加设置
- 主题创建器,无需安装 Discourse 即可创建和展示主题!
本文档是版本控制的 - 在 github 上 建议更改。