我正在使用材料mkdocs。它在一个网站上运行得很好。我现在想基于相同的内容生成两个不同的站点,只需通过定制mkdocs配置文件中的nav:
来选择性地选择每个站点中的内容。
目标:
- 站点1:目标受众A(显示所有页面,所有导航)
- 站点2:目标受众B(仅显示1页,非常简单的导航)
我通过以下方式实现了这一点:
站点1=mkdocs build -v -d builtdocs_site1 -f /docs/mkdocs-site1.yml
站点2=mkdocs build -v -d builtdocs_site2 -f /docs/mkdocs-site2.yml
- mkdocs-site1.yml
nav: - Home: - Home: index.md - More: more.md - more2: more2.md - lotsmore: lotsmore.md
- mkdocs-site2.yml
nav: - Home: - Justone: index.md
这将导致:
Site1:当我打开/docs/builtdocs_site1/index.html
时,我看到4个导航选项,这是预期/期望的结果。
站点2:当我打开/docs/builtdocs_site2/index.html
时,我看到1导航选项,这是预期/期望的结果。
问题:
当我构建这些站点时,输出包括所有文件,而不管在相应yml文件的nav:
部分中指定了什么。
站点1:
/docs/builtdocs_site1/ - index.html - more.html - more2.html - lotsmore.html
站点2:
/docs/builtdocs_site1/ - index.html - more.html - more2.html - lotsmore.html
这意味着site2实际上拥有site1中的内容,即使它不容易访问(没有链接),但任何可以列出/查看目录的人都可以访问它(在我的情况下,由于各种原因,这是正确的)。
如何将mkdocs配置为仅生成nav:
中指定的文件?