2015-02-10 3 views
0

Моя сторона Jekyll использует значение по умолчанию feed.xml. Я хотел бы изменить это, потому что у меня есть site.posts и site.screencasts. Оба имеют необходимые атрибуты, которые будут показаны в feed.xml. по умолчанию запускает этот цикл:Объедините два источника в один файл feed.xml

{% for post in site.posts limit:10 %} 
... 
{% endfor %} 

Есть ли способ объединить site.posts и site.screencasts и чем сортировать их по дате и не ограничивают результат до 10?

+0

'site.screencasts' что это? Наследуются ли они от класса post или page? Покажите мне код! –

ответ

1

Я предполагаю, что ваш site.screencasts происходит от страницы или сообщения, и все они имеют date в передней части.

Начиная с пустым массивом помощником в _config.yml

emptyArray: [] 

Тогда:

{% assign pagesArray = site.emptyArray %} 
{% for post in site.posts %} 
    {% assign pagesArray = pagesArray | push: post %} 
{% endfor %} 
{% for scr in site.screencasts %} 
    {% assign pagesArray = pagesArray | push: scr %} 
{% endfor %} 
{% assign sorted = pagesArray | sort: "date" %} 
{% for s in sorted limit: 10 %} 
<h1>{{ s.title }}</h1> 
{% endfor %} 
+1

Если вы не хотите добавлять что-то в свой '_config.yml', вы можете вместо этого:' {% assign updates = "" | split: ""%} ', чтобы получить пустой список. –

Смежные вопросы