话语中的可定制性?

并非所有事情都需要,但要实现任何更自定义的设计,我认为你需要编写代码。我的建议步骤是:

  • 学习如何使用 @Canapin 已经提到的 Theme CLI gem。这可能是一个艰巨的第一步,但如果有什么能让你爱上自定义 Discourse,那就是这个小 gem!它就像设计师的魔法棒 :sparkles: 没有它,你可能会在每一步都感到阻碍。
  • 练习使用 CSS 自定义属性来实现样式。

我认为这方面的指南已不再是最新的。要实现一个真正一致的设计令牌系统还有很多工作要做,但 Discourse 已经走了很长一段路!弄清楚自定义属性的使用位置和方式将极大地帮助你理解 Discourse 前端最佳实践。

你可以使用浏览器的检查器找到自定义属性,或者先看看这个列表:Documenting custom properties。你可以使用自定义属性来样式化最近的模板,例如侧边栏。

  • 正如 @denvergeeks 所建议的,你可以看看 Canvas 主题模板。它所做的是添加了一组用于布局样式的自定义属性,这些属性在核心中不可用。
3 个赞