Hexo的Front-matter
1. 什么是Front-matter?
Front - matter是放置在Markdown文件最顶部的一个特定格式的代码块,用于设置该文件的元数据(metadata)。你可以把它理解为一篇文章的“属性面板”或“身份证”。
Hexo在生成静态页面时,会首先解析Front - matter来获取这篇文章的标题、创建时间、分类、标签等信息,然后根据这些信息来决定如何渲染页面、如何将其归类等。
核心特点:
- 必须放在文件开头。
- 由三条短横线
---包裹。 - 内部使用YAML(最常见)、JSON或TOML语法。YAML是默认和最推荐使用的格式。
2. 基本语法(YAML格式)
一个最简单的Front - matter看起来像这样:
---
title: Hello World # 文章标题
date: 2023 - 10 - 27 14:00:00 # 文章创建日期
---
在这两行元数据之后,你就可以开始写文章的正文了。
---
title: Hello World
date: 2023 - 10 - 27 14:00:00
---
这里是文章的正文内容,使用 **Markdown** 语法书写。
- 列表项
- 另一个列表项
> 一段引用
3. 常见属性和功能
以下是Hexo Front - matter中最常用和最重要的属性。
3.1. 核心属性
| 属性名 | 功能描述 | 示例 |
|---|---|---|
title | 文章标题。如果不设置,默认使用文件名作为标题。 | title: 我的第一篇文章 |
date | 文章创建时间。用于决定文章在博客中的排序(默认按时间降序)。格式为YYYY - MM - DD HH:mm:ss。Hexo会自动从文件创建时间获取,但建议手动设置。 | date: 2023 - 10 - 27 15:30:00 |
updated | 文章最后更新时间。会在页面中显示,告知读者内容是否有更新。 | updated: 2023 - 10 - 28 10:00:00 |
3.2. 内容组织属性
-
tags(标签)-
功能描述:用于描述文章的关键词,一篇文章可以有多个标签。使用 YAML 列表格式。
-
示例:
tags:
- Hexo
- 博客
- 教程或
tags: [Hexo, 博客, 教程]
-
-
categories(分类)-
功能描述:分类具有层级关系,用于对文章进行更系统的组织。一篇文章通常只属于一个分类(可以有多级子分类)。
-
示例:
categories:
- 编程
- Web开发这表示文章属于
编程/Web开发这个二级分类)
-
3.3. 布局与发布控制属性
| 属性名 | 功能描述 | 示例 |
|---|---|---|
layout | 文章布局。默认为post。如果设置为draft,则使用草稿布局(通常需要配合草稿功能)。通常使用post即可。 | layout: post |
published | 是否发布。如果设置为false,Hexo生成时将会跳过此文章。可用于暂时隐藏某篇文章。 | published: false |
type | 覆盖文章的默认类型。一般用不到。 | type: post |
3.4. 高级与SEO优化属性
| 属性名 | 功能描述 | 示例 |
|---|---|---|
permalink | 自定义文章链接。覆盖全局的永久链接格式,为某篇文章设置一个特殊的、友好的URL。 | permalink: my - special - hexo - article (最终URL可能是 yoursite.com/my - special - hexo - article/) |
cover | 文章封面图。很多主题支持此属性,用于在列表和文章顶部显示一张头图。 | cover: /images/hexo - cover.jpg |
toc | 是否显示文章目录(Table of Contents)。如果主题支持,设置为true会自动根据标题生成目录。 | toc: true |
mathjax | 是否启用MathJax数学公式渲染。如果文章包含LaTeX公式,需要将此设为true。 | mathjax: true |
comments | 是否开启评论。可以针对单篇文章控制评论功能的开关(前提是主题集成了评论系统)。 | comments: false |
sticky | 文章置顶。给文章一个数值,数值越大,置顶优先级越高。非所有主题支持。 | sticky: 100 |
4. 一个完整的Front-matter示例
结合以上属性,一个功能丰富的Front - matter可能长这样:
---
title: 深入理解Hexo的Front - matter
date: 2023 - 10 - 27 16:00:00
updated: 2023 - 10 - 28 09:00:00
tags:
- Hexo
- 静态博客
- 教程
categories:
- 技术
- 博客搭建
description: 本文是一份关于Hexo Front - matter的详细指南,介绍了其定义、语法和各种常见属性的用途,帮助你更好地组织和管理博客内容。
cover: /images/hexo - front - matter - guide.jpg
toc: true
mathjax: false
comments: true
permalink: deep - dive - into - hexo - front - matter
---
5. 总结
Front - matter是Hexo博客内容管理的核心。通过熟练使用这些属性,你可以:
- 精确控制内容:设置标题、时间、摘要。
- 高效组织内容:通过分类和标签将文章结构化。
- 优化用户体验:使用封面图、目录、置顶等功能。
- 提升SEO:自定义链接、添加描述。
建议你在写作时养成规范填写Front - matter的习惯,这会让你的博客管理起来更加得心应手。