2016-02-16 89 views
0

Я хочу создать автора _layout, который я мог бы использовать для монтирования списка всех авторов сайта, работающего на Jekyll (на самом деле это список хостов подкаста). Я хочу, чтобы это было вХотите создать еще один каталог _post в jekyll

+ \ 
    + _posts 
    + _includes 
    + _layouts 
    + _config.yml 
    + authors <-- Here 

В моем сайте Джекил, и я уже видел, что Джекил делают уценки файлы.

Однако я не могу взять авторов там и использовать его для создания списка.

Я использую этот код

<ul> 
    {% for post in site.categories.authors %} 
    <li><a href="{{ site.url }}{{ post.url }}">{{ post.title }}</a></li> 
    {% endfor %} 
</ul> 

Любое предложение о том, как я должен делать то, что я хочу? Я хочу, чтобы страница будет генерировать вернуть имя хозяев в списке, со ссылками на каждый из них, как

<a href="/authors/foo">This guy</a> 
<a href="/authors/bar">That guy</a> 
<a href="/authors/baz">That other guy</a> 

И файлы, которые будут оказанной быть в:

+ \ 
    + _posts 
    + _includes 
    + _layouts 
    + _config.yml 
    + authors 
    + foo.md 
    + bar.md 
    + baz.md 

ответ

2

Если вы хотите использовать коллекции, вам нужно будет их правильно настроить. Но коллекции полезны, когда вам нужно добавить дополнительные файлы разметки, и вы не хотите их в _posts.

Проверьте this answer, если вы хотите пойти на коллекции.


Но я считаю, что вам нужно Jekyll _data, не коллекции.

Для этого создайте папку _data на сайте root и добавьте файл authors.yml.

Затем добавьте к authors.yml данные, которые вы хотите позвонить:

- ref: 01 
    name: Name Surname 
    url: http://something.com 

- ref: 02 
    name: Name Surname 2 
    url: http://somethingelse.com 

Затем вызовите их с помощью жидкости:

{% for author in site.data.authors %} 
<a href="{{ author.url }}">{{ author.name }}</a> 
{% endfor %} 

Я извиняюсь, если я неправильно понял ваш вопрос .... Я действительно надеюсь помочь!