个人博客搭建
本文最后更新于:2024年7月11日 晚上
Hexo 安装配置
Hexo 初始化
Hexo配置需要
git
和node.js
两个依赖组件,具体安装步骤可以直接去官方文档查看。安装Hexo后完成后,初始化Hexo:
1 |
|
- 初始化完成后,打开项目目录下的
_config.yml
,根据自己需求修改一下内容。
1 |
|
- 在项目目录下执行
hexo -g
将会生成网站静态文件,hexo -s
则会打开本地服务器,此时即可访问http://localhost:4000/
查看默认网站。
Hexo Deploy 配置
Hexo内置部署功能,可以很方便的部署到Github上去,并自动同步Github Page,首先安装hexo-deployer-git
1 |
|
具体需在 _config.yml
文件下找到并修改如下:
1 |
|
字段功能如下表所示:
选项 | 描述 | 默认 |
repo |
目标存储库的 URL | |
branch |
分支名称 | gh-pages (GitHub) coding-pages (Coding.net) master (others) |
message |
自定义提交信息 | Site updated: {{ now('YYYY-MM-DD HH:mm:ss') }} |
token |
可选的令牌值,用于认证 repo。 用 $ 作为前缀从而从环境变量中读取令牌 |
配置完成后执行hexo d
即可上传至Github。
Hexo 安装主题
接下来,我们给他换个主题,可以在 https://hexo.io/themes/ 上寻找想要的主题,我们这里以Fluid主题介绍安装步骤:
进入博客目录执行命令安装
1
npm install --save hexo-theme-fluid
在博客目录下创建
_config.fluid.yml
,将主题的 _config.yml (opens new window)内容复制过去。博客目录下的
_config.fluid.yml
文件1
theme: fluid # 请在此处修改主题名称,比如:fluid
Fluid 主题配置
Fluid主题配置来源于Fluid用户手册,这里只记录了本人所用到一些配置,详细配置转到Hexo Fludi用户手册。
Fluid主题配置文件一般指
theme/fluid/_config.yml
或者_config.fluid.yml
,其中_config.fluid.yml
优先级比较高。初始配置可以在博客目录下创建_config.fluid.yml
文件,将官方默认配置复制进去即可。
全局配置
页面顶部大图
主题配置中,每个页面都有名为 banner_img
的属性,可以使用本地图片的相对路径,也可以为外站链接:
本地图片:
1 |
|
外部链接:
1 |
|
网页统计功能
fluid支持多种网页统计方式,下面的选择一个,填写上key即可。
1 |
|
展示 PV 与 UV 统计
PV与UV可以展示当前站点总访问量,总访客数,busuanzi似乎已经凉了。
1 |
|
文章相关配置
Front-matter
Front-matter 是文件开头的 YAML 或 JSON 代码块,用于配置写作设置。例如在博客MD文件开头,我们可以添加如下代码块指明文章基本信息:
1 |
|
字段及解释如下:
设置 | 描述 | 默认值 |
---|---|---|
layout |
布局 | config.default_layout |
title |
标题 | 文章的文件名 |
date |
建立日期 | 文件建立日期 |
updated |
更新日期 | 文件更新日期 |
comments |
开启文章的评论功能 | true |
tags |
标签(不适用于分页) | |
categories |
分类(不适用于分页) | |
permalink |
覆盖文章的永久链接. 永久链接应该以 / 或 .html 结尾 |
null |
excerpt |
纯文本的页面摘要。 使用 该插件 来格式化文本 | |
disableNunjucks |
启用时禁用 Nunjucks 标签 {{ }} /{% %} 和 标签插件 的渲染功能 |
false |
lang |
设置语言以覆盖 自动检测 | 继承自 _config.yml |
published |
文章是否发布 | 对于 _posts 下的文章为 true ,对于 _draft 下的文章为 false |
值得注意的是分类和标签字段,在Hexo中,分类具有顺序性和层次性;而标签没有顺序和层次。在配置上需要注意,下面配置将为文章添加Diary
和Life
分类。
1 |
|
如果需要为文章添加多个子分类,请使用以下列表格式,必须要添加[]
,否则将会识别为层次格式:
1 |
|
首页滚动标题
1 |
|
api
字段可以指定首页标题内容来源url
: API 地址,必须返回的是一个 JSON 格式method
: 请求方法,可选
GET、
POST、
PUTheaders
: 请求头,如果接口需要传一些验证的头部信息,在这里设置keys
指明从请求结果中获取名称,例如['data','content']
表示获取json数据中data
字段中的content
值。
文章摘要
Fluid默认开启自动摘要:
1 |
|
也可以在MD文档中Front-matter
手动指定摘要:
1 |
|
日期/字数/阅读时长/阅读数
显示在文章页大标题下的文章信息,除了作者和阅读次数,其他功能都是默认开启的。
1 |
|
Tag插件
在 markdown 中加入如下的代码来使用便签:
1 |
|
success
可更换为primary
、secondary
、success
、danger
、warning
、info
、light
。
我是便签。
我也是便签。
我还是便签。
我当然是便签。
我肯定是是便签。
我不是便签吗?
我绝对是便签。