如何解决MkDocs自动生成导航时目录排序不符合预期的问题?
解决MkDocs自动导航栏排序不符合预期的问题
方法一:手动指定导航结构(最可控方案)
直接在mkdocs.yml中定义导航的顺序,完全按照你的需求排列,示例配置:
nav: - "1": 1.md - "2": 2.md - "3": 3/ - "4": 4.md
这种方式不受默认排序规则影响,能严格按照设定顺序展示导航项,适合文档结构简单的场景。
方法二:调整目录命名适配默认排序
如果不想修改配置文件,可以给目录添加和文件一致的数字前缀,比如将3/重命名为3_xxx/(xxx为目录的实际名称)。由于MkDocs默认按字母数字排序,3开头的目录会排在4.md之前,无需额外配置就能得到期望的顺序。
方法三:用插件实现自定义排序
借助mkdocs-awesome-pages-plugin插件可灵活配置排序逻辑,步骤如下:
- 安装插件:
pip install mkdocs-awesome-pages-plugin
- 在
mkdocs.yml中启用插件:
plugins: - awesome-pages
- 在
docs/根目录创建.pages文件,指定排序顺序:
order: - 1.md - 2.md - 3/ - 4.md
这种方式无需手动维护整个导航结构,仅通过.pages文件控制排序,适合文档数量较多的场景。
内容的提问来源于stack exchange,提问作者isato
相关产品推荐
相关产品推荐

