parent
f45b597e61
commit
068d921ef6
|
@ -119,7 +119,7 @@ module Jekyll
|
|||
"label" => label,
|
||||
"docs" => docs,
|
||||
"directory" => directory,
|
||||
"written" => write?,
|
||||
"output" => write?,
|
||||
"relative_directory" => relative_directory
|
||||
})
|
||||
end
|
||||
|
|
|
@ -34,6 +34,14 @@ collections:
|
|||
- my_collection
|
||||
{% endhighlight %}
|
||||
|
||||
You can optionally specify metadata for your collection in the configuration:
|
||||
|
||||
{% highlight yaml %}
|
||||
collections:
|
||||
my_collection:
|
||||
foo: bar
|
||||
{% endhighlight %}
|
||||
|
||||
### Step 2: Add your content
|
||||
|
||||
Create a corresponding folder (e.g. `<source>/_my_collection`) and add documents.
|
||||
|
@ -43,11 +51,12 @@ Note: the folder must be named identical to the collection you defined in you co
|
|||
|
||||
### Step 3: Optionally render your collection's documents into independent files
|
||||
|
||||
If you'd like Jekyll to create a public-facing, rendered version of each document in your collection, add your collection name to the `render` config key in your `_config.yml`:
|
||||
If you'd like Jekyll to create a public-facing, rendered version of each document in your collection, set the `output` key to `true` in your collection metadata in your `_config.yml`:
|
||||
|
||||
{% highlight yaml %}
|
||||
render:
|
||||
- my_collection
|
||||
collections:
|
||||
my_collection:
|
||||
output: true
|
||||
{% endhighlight %}
|
||||
|
||||
This will produce a file for each document in the collection.
|
||||
|
@ -61,6 +70,72 @@ choice and written out to `<dest>/my_collection/some_subdir/some_doc.html`.
|
|||
|
||||
Each collection is accessible via the `site` Liquid variable. For example, if you want to access the `albums` collection found in `_albums`, you'd use `site.albums`. Each collection is itself an array of documents (e.g. `site.albums` is an array of documents, much like `site.pages` and `site.posts`). See below for how to access attributes of those documents.
|
||||
|
||||
The collections are also available under `site.collections`, with the metadata you specified in your `_config.yml` (if present) and the following information:
|
||||
|
||||
<div class="mobile-side-scroller">
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Variable</th>
|
||||
<th>Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>label</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p>
|
||||
The name of your collection, e.g. <code>my_collection</code>.
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>docs</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p>
|
||||
An array of <a href="#documents">documents</a>.
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>relative_directory</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p>
|
||||
The path to the collections's source directory, relative to the site source.
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>directory</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p>
|
||||
The full path to the collections's source directory..
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>output</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p>
|
||||
Whether the collection's documents will be output as individual files.
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
|
||||
### Documents
|
||||
|
||||
In addition to any YAML front-matter provided in the document's corresponding file, each document has the following attributes:
|
||||
|
|
Loading…
Reference in New Issue