Jekyll遍历自定义文件夹

时间:2019-04-12 15:40:04

标签: jekyll

我正在使用Jekyll,并具有一个名为var selectBoxes = []; var selectElements = []; $('.select').each(function (index, element) { //Instantiates selectbox plugin (https://github.com/marcj/jquery-selectBox) selectBoxes[index] = new SelectBox($(element), settings = {}); selectElements[index] = selectBoxes[index].getSelectElement(); //gets the particular select element //Binding a close event to perform some tasks $(selectElements[index]).bind('close', function (el) { //Doing something here }); }); 的自定义文件夹,其结构如下:

enter image description here

该文件夹按嵌套类别进行组织,但是据this pull request的了解,如果我像这样使用docs,则只能再增加一个级别:

collections_dir

我想要的是能够遍历collections: js: output: true ruby: output: true collections_dir: docs 文件夹下的所有文件,以便为simple-jekyll-search创建搜索索引。

我需要在此处更改docs以便在site.pages文件夹中进行迭代,但是我不知道该怎么做以及是否可以以一种不可以的方式进行操作无需定义docs文件,列出我自己文件夹中的所有文件。

.yml

1 个答案:

答案 0 :(得分:0)

您可以遍历Jekyll中的所有集合,然后访问每个集合中的文档/文件。请参阅iterating over collectionsaccessing their documents上的Jekyll文档。

所以您只需要稍微调整一下您所拥有的内容,就可以做到:

---
layout: null
---
[
  {%- for collection in site.collections %}
  {%- for page in collection.docs -%}
   {
     {%- if page.title != nil %}
        "title"    : "{{ page.title | escape }}",
        "url"      : "{{ site.baseurl }}{{ page.url }}",
        "date"     : "{{ page.date }}"
     {% endif -%}
   }{% unless forloop.last %},{% endunless %}
  {%- endfor -%}
  {% endfor -%}
]