主侧边栏和导航#

主侧边栏通常包含网站导航和 logo。默认情况下,它位于网站的左侧。本页介绍了一些控制和自定义主侧边栏的方法。

控制左侧边栏项目#

您可以控制网站左上角 logo 和名称下方显示的内容类型。

为此,请在您的 conf.py 文件中使用 html_sidebars 变量。该变量接受字典,其中键为文件名模式,值为侧边栏元素列表。任何匹配键的文件将在该页面的侧边栏中放置相应的侧边栏元素。

例如,以下配置将仅在 posts/ 文件夹下的页面中包含 页脚

html_sidebars = {
    "posts/*": ["sbt-sidebar-nav.html"]
}

还可以使用 ** 将一组侧边栏应用于您书籍的 所有 页面。例如:

html_sidebars = {
    "**": ["sbt-sidebar-nav.html"]
}

更多信息,请参阅 Sphinx HTML 侧边栏文档

默认侧边栏元素#

默认情况下,此主题在所有页面中启用了以下特定于主题的侧边栏元素:

  • navbar-logo.html:显示 logo 和网站标题。

  • icon-links.html: 显示图标链接

  • search-button-field.html: 基于 Bootstrap 的搜索栏(来自 PyData Sphinx Theme

  • sbt-sidebar-nav.html: 基于 Bootstrap 的导航菜单,适用于您的书籍。

为目录添加标题#

如果您想在目录链接部分的上方添加标题,请在该部分的 toctree 指令中使用 :caption: 我的标题文本

将首页添加到您的目录中#

默认情况下,您的目录将从您添加到 toctree 的第一个文件开始。您还可以配置主题,以在导航栏中显示主题的 首页

要将您网站的首页添加到目录中,请使用以下配置:

html_theme_options = {
    ...
    "home_page_in_toc": True
    ...
}

控制左侧边栏列表展开的深度#

您可以通过在 conf.py 中使用以下配置来控制左侧边栏中目录项的展开级别:

html_theme_options = {
    ...
    "show_navbar_depth": <level>,
    ...
}

默认值为 1,它仅显示文档的顶级部分(并在本文档中使用)。

控制左侧边栏列表的最大深度#

您可以通过在 conf.py 中使用以下配置来控制左侧边栏中包含的目录项级别:

html_theme_options = {
    ...
    "max_navbar_depth": <level>,
    ...
}

默认值是 4

关闭可展开的左侧边栏列表#

您可以通过在 conf.py 中使用以下配置来关闭边栏的展开功能:

html_theme_options = {
    ...
    "collapse_navbar": True,
    ...
}

默认值为 False,允许导航栏展开。