Hexo -2- 站点信息配置

本文最后更新于:2022年7月4日 上午

Hexo框架中配置文件内容描述与示例。

_config.yml - 站点配置文件

在各种Hexo相关教程中频繁出现站点配置文件,指的是Hexo根目录中的文件_config.yml

具体内容也可以参考官方文档

  • 注意:配置过程中每一项的英文冒号后需要一个空格

Site - 网站

参数 描述
title 网站标题
subtitle 网站副标题
description 网站描述
keywords 网站的关键词。使用半角逗号 , 分隔多个关键词。
author 您的名字
language 网站使用的语言 (初始建议此处设置为zh-Hans,便于后续稳定翻译)
timezone 网站时区。Hexo 默认使用您电脑的时区。请参考 时区列表 进行设置,如 America/New_York, Japan, 和 UTC 。一般的,对于中国大陆地区可以使用 Asia/Shanghai
  • 这部分是我们刚刚建站时需要设置的部分,建议修改。以我的站点配置为例:
1
2
3
4
5
6
7
8
# Site
title: 又见苍岚
subtitle: 'www.zywvvd.com'
description: 'Stay hungury ! Stay foolish !'
keywords: '人工智能, 深度学习, 个人博客'
author: Yiwei Zhang
language: zh-Hans
timezone: Asia/Shanghai

URL - 网址

参数 描述 默认值
url 网址
root 网站根目录
permalink 文章的 永久链接 格式 :year/:month/:day/:title/
permalink_defaults 永久链接中各部分的默认值
pretty_urls 改写 permalink 的值来美化 URL
pretty_urls.trailing_index 是否在永久链接中保留尾部的 index.html,设置为 false 时去除 true
pretty_urls.trailing_html 是否在永久链接中保留尾部的 .html, 设置为 false 时去除 (对尾部的 index.html无效)
  • url 和 root 需要关联到挂载的服务器目录

修改站点配置文件,填入网址设置:

1
2
3
4
# URL
## If your site is put in a subdirectory, set url as 'http://yoursite.com/child' and root as '/child/'
url: http://github.com/<Github账号>/<Github账号>.github.io
root: /<Github账号>.github.io/
  • 修改文章永久链接

默认文章路径类似: www.zywvvd.com/notes/hexo/website/xxx

这是因为文章链接配置permalink值默认为:year/:month/:day/:title/

不喜欢此种形式链接的同学可以自定义修改,例如:

1
permalink: :category/:title/

可以使用如下变量和 Front-matter 中的所有属性。

变量 描述
:year 文章的发表年份(4 位数)
:month 文章的发表月份(2 位数)
:i_month 文章的发表月份(去掉开头的零)
:day 文章的发表日期 (2 位数)
:i_day 文章的发表日期(去掉开头的零)
:hour 文章发表时的小时 (2 位数)
:minute 文章发表时的分钟 (2 位数)
:title 文件名称
:post_title 文章标题
:id 文章 ID (not persistent across cache reset)
:category 分类。如果文章没有分类,则是 default_category 配置信息。

Directory - 目录

参数 描述 默认值
source_dir 资源文件夹,这个文件夹用来存放内容。 source
public_dir 公共文件夹,这个文件夹用于存放生成的站点文件。 public
tag_dir 标签文件夹 tags
archive_dir 归档文件夹 archives
category_dir 分类文件夹 categories
code_dir Include code 文件夹,source_dir 下的子目录 downloads/code
i18n_dir 国际化(i18n)文件夹 :lang
skip_render 跳过指定文件的渲染。匹配到的文件将会被不做改动地复制到 public 目录中。您可使用 glob 表达式来匹配路径。

Writing - 文章

参数 描述 默认值
new_post_name 新文章的文件名称 :title.md
default_layout 预设布局 post
auto_spacing 在中文和英文之间加入空格 false
titlecase 把标题转换为 title case false
external_link 在新标签中打开链接 true
external_link.enable 在新标签中打开链接 true
external_link.field 对整个网站(site)生效或仅对文章(post)生效 site
external_link.exclude 需要排除的域名。主域名和子域名如 www 需分别配置 []
filename_case 把文件名称转换为 (1) 小写或 (2) 大写 0
render_drafts 显示草稿 false
post_asset_folder 启动 Asset 文件夹 (建议设置为 True ) false
relative_link 把链接改为与根目录的相对位址 false
future 显示未来的文章 true
highlight 代码块的设置
highlight.enable 开启代码块高亮 true
highlight.auto_detect 如果未指定语言,则启用自动检测 false
highlight.line_number 显示行数 Enabling this option will also enable wrap option true
highlight.tab_replace 用 n 个空格替换 tabs;如果值为空,则不会替换 tabs ''
highlight.wrap Wrap the code block in `` true
highlight.hljs Use the hljs-* prefix for CSS classes false
  • post_asset_folder修改为true,这样新建文章时会创建同名文件夹,便于后期博客图片等资源管理

Category & Tag - 分类 & 标签

参数 描述 默认值
default_category 默认分类 uncategorized
category_map 分类别名
tag_map 标签别名

Date / Time format - 日期 / 时间格式

Hexo 使用 Moment.js 来解析和显示时间。

参数 描述 默认值
date_format 日期格式 YYYY-MM-DD
time_format 时间格式 HH:mm:ss
use_date_for_updated 启用以后,如果 Front Matter 中没有指定 updatedpost.updated 将会使用 date 的值而不是文件的创建时间。在 Git 工作流中这个选项会很有用 true

Pagination - 分页

参数 描述 默认值
per_page 每页显示的文章量 (0 = 关闭分页功能) 10
pagination_dir 分页目录 page

Extensions - 扩展

参数 描述
theme 当前主题名称。值为false时禁用主题
theme_config 主题的配置文件。在这里放置的配置会覆盖主题目录下的 _config.yml 中的配置
deploy 部署部分的设置
meta_generator Meta generator 标签。 值为 false 时 Hexo 不会在头部插入该标签
  • 更换主题时改变theme的值为主题名称

Include / Exclude file(s) - 包括或不包括目录和文件

在 Hexo 配置文件中,通过设置 include/exclude 可以让 Hexo 进行处理或忽略某些目录和文件夹。你可以使用 glob 表达式 对目录和文件进行匹配。

include and exclude options only apply to the source/ folder, whereas ignore option applies to all folders.

参数 描述
include Hexo 默认会忽略隐藏文件和文件夹(包括名称以下划线和 . 开头的文件和文件夹,Hexo 的 _posts_data 等目录除外)。通过设置此字段将使 Hexo 处理他们并将它们复制到 source 目录下。
exclude Hexo 会忽略这些文件和目录
ignore Ignore files/folders

Hexo -2- 站点信息配置
https://www.zywvvd.com/notes/hexo/website/2-hexo-config/Hexo-config/
作者
Yiwei Zhang
发布于
2020年2月24日
许可协议