前言

任何包含 YAML 前言块的文件都将由 Jekyll 作为特殊文件进行处理。前言必须是文件中的第一项内容,并且必须采用三破折号行之间的有效 YAML 格式。以下是一个基本示例

---
layout: post
title: Blogging Like a Hacker
---

在这些三破折号行之间,你可以设置预定义变量(请参阅以下参考)或创建你自己的自定义变量。然后,你可以使用 Liquid 标记访问这些变量,这些标记既可以在文件的后半部分,也可以在页面或帖子依赖的任何布局或包含中使用。

UTF-8 字符编码警告

如果你使用 UTF-8 编码,请确保你的文件中不存在 BOM 头字符,否则会对 Jekyll 造成非常非常严重的后果。如果你在 Windows 上运行 Jekyll,这一点尤其重要。

前言变量是可选的

如果你想使用 Liquid 标记和变量,但不需要在前言中添加任何内容,只需将其留空即可!即使三破折号行之间没有任何内容,Jekyll 仍会处理你的文件。(这对于 CSS 和 RSS 源等内容非常有用!)

预定义全局变量

你可以在页面或帖子的前言中设置许多预定义全局变量。

变量 说明

layout

如果设置,则指定要使用的布局文件。使用不带文件扩展名的布局文件名。布局文件必须放置在 _layouts 目录中。

  • 使用 null 将生成不使用布局文件的文件。如果文件是帖子/文档并且在 前言默认值 中定义了布局,则会覆盖此设置。
  • 从版本 3.5.0 开始,在帖子/文档中使用 none 将生成不使用布局文件的文件,而不管前言默认值如何。在页面中使用 none 将导致 Jekyll 尝试使用名为“none”的布局。

永久链接

如果您需要处理过的博客文章 URL 与网站范围的样式不同(默认 /year/month/day/title.html),则可以设置此变量,它将用作最终 URL。

已发布

如果您不希望在生成网站时显示特定文章,请将其设置为 false。

渲染标记为未发布的文章

要预览未发布页面,请使用 `--unpublished` 开关运行 `jekyll serve` 或 `jekyll build`。Jekyll 还具有一个方便的 草稿 功能,专门针对博客文章定制。

自定义变量

您还可以设置自己的前端变量,以便在 Liquid 中访问。例如,如果您设置了一个名为 food 的变量,则可以在您的页面中使用它

---
food: Pizza
---

<h1>{{ page.food }}</h1>

文章的预定义变量

这些变量开箱即用,可用于文章的前端。

变量 说明

日期

此处的日期将覆盖文章名称中的日期。这可用于确保文章的正确排序。日期的指定格式为 YYYY-MM-DD HH:MM:SS +/-TTTT;小时、分钟、秒和时区偏移量是可选的。

类别

分类

您可以指定文章所属的一个或多个类别,而不是将文章放在文件夹中。在生成网站时,文章将表现得好像已正常设置了这些类别。类别(复数键)可以指定为 YAML 列表 或空格分隔的字符串。

标签

与类别类似,可以向文章添加一个或多个标签。同样,标签可以指定为 YAML 列表 或空格分隔的字符串。

不要重复自己

如果您不想反复重复经常使用的前端变量,请为它们定义 默认值,仅在必要时(或根本不)覆盖它们。这适用于预定义变量和自定义变量。