有没有办法在jekyll中为站点对象添加另一个变量?

时间:2016-07-09 23:08:13

标签: jekyll jekyll-extensions

我正在创建一个博客,只是为了转发我的笔记。我喜欢我可以用site.tagssite.categories走多远。我现在真正需要的是能够使用另一个过滤器选项。李site.sublog它可以帮助我创造我需要的东西

所以这是一篇帖子

---
layout: post
title: "Angular.js With Codeschool:part five"
date: 2015-05-14 07:57:01 +0100
category: [Angularjs-codeschool, basics]
tags: [angular with codeschool]
sublog: [web]
---

基本上我想写下我感兴趣的所有内容:web,general tech,history ...以及创建子博客

有很多方法,但现在我在这里,我只是想知道这样的事情是否可能

2 个答案:

答案 0 :(得分:0)

您可以在_config.yml中存储全网信息+配置设置。

您的示例在YAML前面的内容中显示了页面特定信息!

请阅读Jekyll Documentation

答案 1 :(得分:0)

Categories and tags由Jekyll特殊对待,因此您不会发现帖子中的其他前项条目将被收集到整个站点范围的变量中,例如site.categoriessite.tags

Jekyll文档在retrieving items based on front matter properties上有一个教程,该教程显示了如何遍历整个集合并基于前端物质变量的值进行每个项目的处理。

您可以iterate遍历整个收藏集,检查每个项目的sublog值,然后concat-将它们放入所有已知sublog值的列表中(也许删除重复项)之后使用uniq,并在进一步处理之前选择sort-对其进行处理。

这将使您能够创建所有子博客的列表,并为每个子博客创建其中的帖子列表(这可能是您的最终目标)。