全局主题

在多个文档站点之间共享一致的视觉标识。

以 Markdown 格式查看

全局主题允许单个”控制”存储库为您组织的文档定义共享的视觉标识(logo、颜色、字体、布局、CSS、JS 等)。子存储库通过名称引用主题,并在发布时自动继承这些设置。

当您的组织维护多个应该共享相同品牌标识的文档站点时,这非常有用。

设置全局主题

1

从控制存储库导出主题

从定义您规范品牌标识的存储库中,导出主题:

$fern docs theme export

这会从您的 docs.yml 中读取符合主题条件的字段,并生成一个 theme.yml 文件以及在 fern/theme/ 目录中的所有本地资源(logo、字体、CSS、JS)的副本。

使用 --output 指定不同的目录:

$fern docs theme export --output ./my-theme
2

上传主题

上传导出的主题到 Fern 注册表:

$fern docs theme upload --name my-theme

这会上传主题配置和所有引用的文件资源。如果您省略 --name,主题将保存为 default

3

确认上传

列出您组织的所有主题:

$fern docs theme list

使用 --json 获取包含 updatedAt 时间戳的机器可读输出:

$fern docs theme list --json
4

从子存储库引用主题

在子存储库的 docs.yml 中,添加:

docs.yml
1global-theme: my-theme
5

正常发布

从子存储库运行标准的发布命令

$fern generate --docs

CLI 从 Fern 注册表获取指定的主题,下载任何文件资源,将主题合并到本地 docs.yml 配置中,并发布合并后的结果。无需额外步骤。

主题控制的内容

当应用全局主题时,主题的值优先于子存储库 docs.yml 中的品牌字段,而子存储库保留对其内容和结构的控制权。在子存储库中,只编辑由子存储库拥有的字段 — 您对主题拥有字段的任何本地更改在发布时主题合并时会被覆盖。

字段所有者描述
logo主题品牌 logo 图像和链接
favicon主题浏览器标签图标
background-image主题页面背景
colors主题强调色和背景色
typography主题正文、标题和代码字体
layout主题侧边栏宽度、内容宽度、标签页和搜索栏位置
theme主题明暗模式默认值
settings主题显示设置
integrations主题分析和追踪
css主题自定义样式表
js主题自定义脚本
header主题自定义头部组件
footer主题自定义页脚组件
navbar-links主题顶部导航链接
footer-links主题页脚导航链接
ai-search主题AI 搜索配置
announcement主题公告横幅
metadata主题SEO 元数据
navigation子存储库标签页、章节、页面
apis子存储库API 参考
redirects子存储库重定向
versions子存储库版本
instances子存储库域名和 URL

更新主题

要更新主题,请对控制存储库的 docs.yml 进行更改,重新导出,并使用相同名称重新上传。下次子存储库发布时,它会自动获取更新的主题。

$fern docs theme export
$fern docs theme upload --name my-theme