我想知道是否有任何方法可以在Jekyll / Liquid中构建哈希变量。
也许是这样的:
{% assign x = { foo: 1, bar: 2 } %}
{{ x[foo] }}
{{ x[bar] }}
答案 0 :(得分:6)
除for
循环外,没有可用于哈希的过滤器。
获取哈希的唯一方法是从全局或页面变量,数据或集合。
generator plugin可以在渲染之前进行一些计算。
您还可以操纵数组。目前只有push
和unshift
pop
和shift
正在改变他们在Jekyll 3中的行为。
在_config.yml
中添加emptyArray: []
在您的代码中{% assign myarray = site.emptyArray %}
。
您现在可以push
和unshift
中的任何内容,例如{% assign myarray = myarray | push: "toto" %}
或任何对象/哈希,例如页面,帖子,数据......