如何在Quarto网站侧边栏自定义子文件夹排序(无需标题编号)
解决Quarto侧边栏按文件夹编号排序的问题
当你用sidebar.contents: auto自动生成侧边栏时,Quarto默认按页面标题的字母顺序排序,所以会出现Animals在前、Basics在后的情况。不用在标题里加编号的话,有两种推荐方法调整顺序:
方法一:给文件夹的index.qmd添加order元数据
在每个子文件夹的index.qmd文件的YAML头部添加order字段,数值对应你想要的排序优先级,数值越小排得越靠前:
- 01_basics/index.qmd:
--- title: "Basics" order: 1 ---
- 02_animals/index.qmd:
--- title: "Animals" order: 2 ---
保持_quarto.yml里的sidebar.contents: auto不变,Quarto会自动根据order字段的数值排序,完全匹配你的文件夹编号顺序,同时标题里不会显示任何数字。
方法二:在_quarto.yml中手动指定侧边栏内容
如果你的子文件夹数量不多,可以直接在sidebar.contents里按目标顺序列出各个文件夹的index.qmd路径,替代auto:
sidebar: contents: - 01_basics/index.qmd - 02_animals/index.qmd
Quarto会读取每个index.qmd里的标题显示在侧边栏,同样不需要在标题中添加编号,且顺序完全由你控制。
推荐选择
- 如果项目里子文件夹数量较多,优先用方法一,后续新增文件夹时只需要添加对应的
order值即可,维护更高效; - 如果子文件夹数量少且固定,方法二更直接,不用修改多个文件的元数据。
内容的提问来源于stack exchange,提问作者garej
相关产品推荐
相关产品推荐

