自定义主题而没有编辑代码按钮

有时,您可能想要自定义 Discourse 主题,但发现没有“自定义代码”部分,也没有“编辑代码”按钮。这通常发生在远程主题(从外部源安装的主题)和预安装主题(Horizon 和 Foundation)上。以下是添加自定义设置的方法:

理解限制

对于预安装的主题,您会看到一条横幅提示:

此主题是预安装的,无法删除或自定义。

对于远程主题,您通常会看到类似的消息:

如果您想编辑此主题,必须 在其存储库上提交更改

:discourse2: 由 Discourse 托管?您可能会看到:“Discourse 中已禁用远程主题的编辑。如果您需要帮助将自定义的远程主题迁移到本地主题,请 联系我们。”

自定义选项

  1. 提交更改到主存储库:如果您的更改可能使他人受益,请考虑将其提交给主题的原始创建者。这需要熟悉 git 和 GitHub。
  2. 创建存储库的副本(fork):创建您自己的主题代码存储库版本,添加您的自定义设置,然后使用您复制的版本。此方法需要技术知识,并且意味着您需要自己维护更新。
  3. 创建自定义组件:此方法允许您在不修改原始主题的情况下添加自定义设置。这是大多数管理员推荐的方法,也是本指南的重点。

创建自定义组件

请按照以下步骤为您的主题自定义设置创建自定义组件:

  1. 转到您站点的管理面板,然后导航到 /admin/config/customize/components

  2. 点击右上角的“安装”按钮。

  3. 选择“+ 创建新”,输入组件的名称(例如,“我的自定义组件”),选择“组件”作为类型,然后点击“创建”。

  4. 在组件列表中找到新创建的组件,然后点击“编辑”按钮。

  5. 将组件添加到您想要自定义的主题中。

    :warning: 别忘了点击绿色的勾号进行保存。

  6. 点击“编辑代码”。

  7. 在适当的部分(CSS、<head> 等)添加您的自定义设置。

  8. 点击“保存”以应用您的更改。

重要提示

  • 您的自定义设置将应用于现有主题之上。
  • 如果基础主题更新,您的自定义组件仍将应用其更改,这有时可能导致意外结果。
  • 在主题更新后,请务必彻底测试您的自定义设置。

通过遵循这些步骤,您可以为 Discourse 主题添加自定义 CSS、HTML 或其他修改,而无需直接编辑远程主题文件。此方法适用于大多数希望对站点外观或功能进行少量自定义的管理员。

9 个赞