Hexo -2- 站点信息配置

865 阅读5分钟

这是我参与8月更文挑战的第三天,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
  • 这部分是我们刚刚建站时需要设置的部分,建议修改。以我的站点配置为例:
# 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 需要关联到挂载的服务器目录

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

# 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/2020/02/27/…

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

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

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_dirInclude 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 casefalse
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 optiontrue
highlight.tab_replace用 n 个空格替换 tabs;如果值为空,则不会替换 tabs''
highlight.wrapWrap the code block in ``true
highlight.hljsUse the hljs-* prefix for CSS classesfalse
  • 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_generatorMeta 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.

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