手摸手教你用github和hexo搭建个人博客(三)

上一篇我们介绍了如何用Hexo来创建博客以及如何将博客内容部署到Github仓库里,这篇我们会详细说明Hexo框架内的_config.yml文件中的设置项都能带来哪些改变

下面的内容是Hexo初始化项目后的_config.yml中全部内容

# Hexo Configuration
## Docs: https://hexo.io/docs/configuration.html
## Source: https://github.com/hexojs/hexo/

# Sitejit
title: Hexo
subtitle:
description:
keywords:
author: John Doe
language:
timezone:

# URL
## If your site is put in a subdirectory, set url as 'http://yoursite.com/child' and root as '/child/'
url: http://yoursite.com
root: /
permalink: :year/:month/:day/:title/
permalink_defaults:

# Directory
source_dir: source
public_dir: public
tag_dir: tags
archive_dir: archives
category_dir: categories
code_dir: downloads/code
i18n_dir: :lang
skip_render:

# Writing
new_post_name: :title.md # File name of new posts
default_layout: post
titlecase: false # Transform title into titlecase
external_link: true # Open external links in new tab
filename_case: 0
render_drafts: false
post_asset_folder: false
relative_link: false
future: true
highlight:
  enable: true
  line_number: true
  auto_detect: false
  tab_replace:

# Home page setting
# path: Root path for your blogs index page. (default = '')
# per_page: Posts displayed per page. (0 = disable pagination)
# order_by: Posts order. (Order by date descending by default)
index_generator:
  path: ''
  per_page: 10
  order_by: -date

# Category & Tag
default_category: uncategorized
category_map:
tag_map:

# Date / Time format
## Hexo uses Moment.js to parse and display date
## You can customize the date format as defined in
## http://momentjs.com/docs/#/displaying/format/
date_format: YYYY-MM-DD
time_format: HH:mm:ss

# Pagination
## Set per_page to 0 to disable pagination
per_page: 10
pagination_dir: page

# Extensions
## Plugins: https://hexo.io/plugins/
## Themes: https://hexo.io/themes/
theme: landscape

# Deployment
## Docs: https://hexo.io/docs/deployment.html
deploy:
  type:

Site

title

网站的标题,大多数情况下会被用来显示在浏览器的标签页上以及首页(具体由各主题决定)

Subtitle

注意: 首字母要小写,这里因为是关键字跟主题样式冲突,故首字母大小

网站的副标题,大多数情况下会被用来显示在首页(具体由各主题决定)

description

网站描述内容,某些主题可能会显示

keywords

关键字,某些主题可能会在SEO时使用

author

作者姓名,大多数情况下会显示在页面底部或文章底部(具体由各主题决定)

language

你的网页所使用的语言,参照ISO 639-1代码表, 默认值是en

timezone

所在时区,默认使用你电脑设置的时区,也可以参照时区对照表进行修改,如America/New_York, Japan, 和UTC

URL

url

你的博客对应的URL,如果你的博客在一个子文件夹内,比如http://example.org/blog,那么这里需要把URL设置成http://example.org/blog,同时要把下面的root设置为/blog/

root

你的博客对应的根路径,如果你的博客在一个子文件夹内,比如http://example.org/blog,那么这里需要把要把root设置为/blog/,同时要把上面的URL设置成http://example.org/blog

文章永久链接的格式,默认设置为:year/:month/:day/:title/,默认提供如下变量

变量名 描述
:year 发布年份(4位数字)
:month 发布月份(2位数字)
:i_month 发布月份(去除前面的占位0
:day 发布日期(2位数字)
:i_day 发布日期(去除前面的占位0)
:title 文件名
:id 发布id
:category 分类,如果发布的文章没有包含分类信息,则会使用default_category的值

更多设置请参考这里

文章永久链接中各部分的默认值

Directory

source_dir

存储你原始内容的文件夹

public_dir

编译后生成静态文件的文件夹

tag_dir

标签文件夹

archive_dir

归档文件夹

category_dir

分类文件夹

code_dir

包含代码的文件夹,source_dir的子文件夹

i18n_dir

i18n 文件夹

skip_render

跳过指定文件的渲染,你可以使用glob expressions来匹配路径

Writing

new_post_name

新文章的名称

default_layout

预设布局

titlecase

是否把标题转换为title case形式

是否在新窗口打开外部链接

filename_case

把标题转换为1(小写);2(大写)

render_drafts

是否显示草稿

post_asset_folder

是否启用Asset Folder

是否把链接改为相对根目录的相对路径

future

是否显示未来的文章

highlight

代码块的相关设置

enable

是否启用

line_number

是否显示行号

auto_detect

是否启用自动检测

tab_replace

制表符替换

Home page setting

index_generator

path

博客首页的根路径

per_page

每页显示的文章数,0代表禁止分页(仅针对首页)

order_by

排序规则(仅针对首页)

Category & Tag

default_category

默认分类

category_map

分类别名

tag_map

标签别名

Date / Time format

date_format

日期格式

time_format

时间格式

Pagination

per_page

每页显示的文章数,0代表禁止分页

pagination_dir

分页目录

Extensions

theme

当前主题名称,false代表禁用主题

Deployment

deploy

部署相关配置

type

类型

以上是关于Hexo项目根目录下_config.yml文件的设置解释,下一篇我们会讲解如何将我们的博客主题切换到流行的Next主题

(完)

如果此文有帮助到你,你可以选择请我喝杯☕️ ,感谢你对我分享内容的认可😃