作者编写的文章内容是hugo构建博客网站的主要数据来源, 但一个网站通常还需要其他的数据, 如 网站标题, 页面的SEO数据等, 但做为一个静态的博客系统, 这些数据是没办法存放在数据库的. FrontMatter和Config就是为解决这些问题的.

FrontMatter – 前置数据

FrontMatter添加在作者编写的文章内容前面的一段数据, 格式有yaml, toml, json. FrontMatter直译很难理解, 而他们都是以特定的数据格式出现在文章内容的顶部的, 为hugo生成静态页面提供数据来源的. 所以把他翻译为: 前置数据.

下面是前置数据的具体形式, yaml由---包裹, toml由+++包裹, json由{}包裹.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
---
title: "FrontMatter和Config--hugo的另类数据源"
date: 2019-11-01T05:15:33+08:00
draft: true
author: "Suroppo"
tags: []
keywords: []
description: ""
---
文章内容.....
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
+++
title= "FrontMatter和Config--hugo的另类数据源"
date= 2019-11-01T05:15:33+08:00
draft= true
author= "Suroppo"
tags= []
keywords= []
description= ""
+++
文章内容.....
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
{
   "title": "FrontMatter和Config--hugo的另类数据源", 
   "date": "2019-11-01T05:15:33+08:00",
   "draft": true,
   "author": "Suroppo",
   "tags": [],
   "keywords": [],
   "description": ""
}
文章内容..... 

在这些前置数据中, 有些是hugo默认的数据, 也由一些是用户自定义的数据. hugo把他们封装成模板变量, 以便在模板中使用.

Config

config文件也同样支持yaml, toml, json三种数据格式. 默认config以文件的形式存放在hugo站点的根目录下面, 也可以存放在config目录下面, 另外还可以通过命令行的–config参数指定配置文件.

使用数据

对于如何使用这些数据, 因为涉及到模板的相关内容, 后面会写一篇模板的基本用法的文章. 来介绍如何使用这些数据