如何在单个Jekyll项目中组织多个输出?

And*_*voy 6 documentation-generation jekyll jekyll-paginator

我使用Jekyll为软件产品创建文档.我有30多种不同的产品,它们具有共同的LIQUID模板但内容不同.每个产品文档都有自己的内容列表.

对于一个项目,一切都很好.我有一个内容文件夹以及css/js文件夹.我运行"jekyll serve"并发布一个项目.

问题是,我不希望将30个Jekyll项目一个接一个地存储在另一个具有类似css,configs,js文件夹的项目中,并且只会在内容部分中有所不同.

问题是:我如何组织内部结构,以便在单个项目中有一个共同布局和"x"不同内容文件夹的单个项目?

喜欢:

_product1 /

  • some_subdir

    'topic.md'

_product2 /

  • some_subdir

    'topic.md'

如果可能,我该如何管理输出?我需要分别发布产品1和产品2 ...产品'x'.

感谢您的帮助.

UPD:这是GitHub上的演示项目:https://github.com/plywoods/JekyllDocumentationDemo

Cai*_*ete 4

Jekyll 中实现内容分离的方法是使用Collections

以下是使用 Collections 的 Jekyll 网站示例: https://github.com/netponto/netponto.github.io

_meetings_members、 和_sessions是不同的集合,类似于您的_product1_product2等。


_config.yml您可以自定义Jekyll 站点的输出/URL 的显示方式。例如:

collections:
  meetings:
    output: true
    permalink: /reunioes/:path/
  sessions:
    output: true
    permalink: /sessoes/:path/
Run Code Online (Sandbox Code Playgroud)

要显示集合的项目,例如“sessions”集合,您可以执行以下操作

{% for session in site.sessions %}
  <p>{{ session.title }}</p>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

如果您在实现集合时遇到问题,请在 GitHub 上整理一个可重现的示例,以便其他人可以看到您尝试做的事情并指出缺少的内容。