Jekyll默认yaml front-matter不能通过液体访问

时间:2016-02-02 01:49:04

标签: yaml jekyll liquid templating

在我的个人网站上,我根据帖子的类别在主页上设置帖子列表的样式。所以,如果我有前面的事情:

---
layout: post
title:  "My Post"
date:   2016-01-26
category: code
---

由于类别为code,因此下面的div将呈现为具有css类card-code并相应地设置帖子摘录。

  {% for post in site.posts %}
    <div class="col-1-2">

      <!-- This Line! -->
      <div class="paper-card card-{{ post.category }}">

         <!-- other code -->
      </div>
    </div>
  {% endfor %}

为了让我的生活变得更简单,我在general文件中将帖子的默认类别设置为_config.yml

default:
  -
    scope:
      path: ""
      type: "posts"
    values:
      category: "general"

但是,{{ post.category }}没有为这些帖子提供任何内容(即card-)。有什么想法,为什么这不起作用?

1 个答案:

答案 0 :(得分:1)

阅读Front Matter Defaults部分的文档,应该将该部分称为defaults,而不是default

_config.yaml

中试试这个
defaults:
  -
scope:
  path: ""
  type: "posts"
values:
  category: "general"