Files
docs/sidebars.js
Ryan Wang aee974185e docs: refine theme development documentation (#110)
完善 Halo 2.0 主题开发的文档。

/kind documentation

Fixes https://github.com/halo-dev/docs/issues/109

TODO list:

- [x] 准备工作 - 提供从搭建 Halo 开发环境到成功应用一个新的主题的过程。
- [x] 目录结构 - 详细解释一个主题的目录构成,包括每一个目录和文件的作用。
- [x] 配置文件 - 提供 `theme.yaml` 的各个配置的解释。
- [x] 设置选项 - 讲解如何在主题模板中使用主题定义的 `settings.yaml` 配置项。**注意:关于 settings.yaml 或许可以单独出一篇文档,因为插件也需要用到。主题和插件的文档只需要单独讲解如何使用**
- [x] 静态资源 - 讲解静态资源的引用。
- [x] 核心路由 - 列出 Halo 核心提供的路由以及模板,其中需要包括 `文章/自定义页面/分类的自定义模板` 的讲解
- [x] 模板变量 - 讲解系统内提供的路由对应模板中包含的变量。
- [x] Finder APIs - 讲解数据获取 API 的使用。
- [x] 常用代码片段 - 提供一些在主题开发中常用的代码片段,比如如何定义一个 `layout.html`,如何结构化渲染一个菜单或者文章分类等。

```release-note
None
```
2022-11-23 08:39:29 +00:00

155 lines
4.6 KiB
JavaScript

/**
* Creating a sidebar enables you to:
- create an ordered group of docs
- render a sidebar for each doc of that group
- provide next/previous navigation
The sidebars can be generated from the filesystem, or explicitly defined here.
Create as many sidebars as you want.
*/
/** @type {import('@docusaurus/plugin-content-docs').SidebarsConfig} */
module.exports = {
// By default, Docusaurus generates a sidebar from the docs folder structure
// tutorialSidebar: [{type: 'autogenerated', dirName: '.'}],
tutorialSidebar: [
"intro",
{
type: "category",
label: "入门",
link: {
type: "generated-index",
},
collapsed: false,
items: [
"getting-started/prepare",
{
type: "category",
label: "安装指南",
link: {
type: "generated-index",
},
items: [
// "getting-started/install/linux",
"getting-started/install/docker",
"getting-started/install/docker-compose",
],
},
// "getting-started/config",
// "getting-started/upgrade",
// "getting-started/downloads",
],
},
// {
// type: "category",
// label: "用户指南",
// items: [
// "user-guide/backup-migration",
// "user-guide/markdown",
// "user-guide/faq",
// ],
// },
{
type: "category",
label: "开发者指南",
link: {
type: "generated-index",
},
items: [
{
type: "category",
label: "系统开发",
link: {
type: "generated-index",
},
items: [
// "developer-guide/core/structure",
"developer-guide/core/prepare",
"developer-guide/core/run",
// "developer-guide/core/code-style",
],
},
{
type: "category",
label: "插件开发",
link: {
type: "generated-index",
},
items: ["developer-guide/plugin/prepare"],
},
{
type: "category",
label: "主题开发",
link: {
type: "generated-index",
},
items: [
"developer-guide/theme/prepare",
"developer-guide/theme/config",
"developer-guide/theme/structure",
"developer-guide/theme/template-route-mapping",
"developer-guide/theme/static-resources",
"developer-guide/theme/settings",
{
type: "category",
label: "模板变量",
link: {
type: "doc",
id: "developer-guide/theme/template-variables",
},
items: [
"developer-guide/theme/template-variables/index_",
"developer-guide/theme/template-variables/post",
"developer-guide/theme/template-variables/page",
"developer-guide/theme/template-variables/archives",
"developer-guide/theme/template-variables/tags",
"developer-guide/theme/template-variables/tag",
"developer-guide/theme/template-variables/categories",
"developer-guide/theme/template-variables/category",
],
},
{
type: "category",
label: "Finder API",
link: {
type: "doc",
id: "developer-guide/theme/finder-apis",
},
items: [
"developer-guide/theme/finder-apis/category",
"developer-guide/theme/finder-apis/tag",
"developer-guide/theme/finder-apis/post",
"developer-guide/theme/finder-apis/single-page",
"developer-guide/theme/finder-apis/comment",
"developer-guide/theme/finder-apis/contributor",
"developer-guide/theme/finder-apis/menu",
"developer-guide/theme/finder-apis/site-stats",
"developer-guide/theme/finder-apis/theme",
"developer-guide/theme/finder-apis/plugin",
],
},
"developer-guide/theme/code-snippets",
],
},
"developer-guide/form-schema",
// {
// type: "link",
// label: "REST API",
// href: "https://api.halo.run",
// },
],
},
{
type: "category",
label: "参与贡献",
link: {
type: "generated-index",
},
items: ["contribution/issue", "contribution/pr"],
},
"about",
],
};