You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

能否手动调整MkDocs/MkDocs-Material中目录与页面的排序?

用前置元数据实现MkDocs章节自定义排序(无需手动配置nav或文件名前缀)

要实现类似Jekyll/Just-the-Docs的nav_order元数据排序方式,你可以使用mkdocs-awesome-pages-plugin插件,步骤如下:

1. 安装插件

在终端执行安装命令:

pip install mkdocs-awesome-pages-plugin

2. 在mkdocs.yml中启用插件

打开配置文件,添加插件配置:

plugins:
  - awesome-pages

3. 给每个章节目录添加带排序元数据的入口文件

在每个章节目录下创建_index.md文件,通过前置元数据设置nav_order和章节标题:

  • intro/_index.md:
---
nav_order: 1
title: Introduction
---
  • basic-use/_index.md:
---
nav_order: 2
title: Basic Use
---
  • advanced-use/_index.md:
---
nav_order: 3
title: Advanced Use
---

效果说明

  • MkDocs会自动读取每个目录下_index.md的nav_order值来排序章节,最终导航顺序会变成Introduction → Basic Use → Advanced Use
  • 无需手动在mkdocs.yml的nav字段中列出所有页面,插件会自动扫描目录结构生成导航
  • 保持原有URL路径的整洁,不会出现数字前缀,也不用担心链接失效问题
  • 子页面的排序也可以用同样的方式:给子页面的前置元数据添加nav_order值即可

内容的提问来源于stack exchange,提问作者amenthes

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 17:39:51