为Hexo优化
搭建完基本的框架,来为自己博客的美观和便捷性,做点功课。
写在前面
在本文中,假定你已经成功安装了 Hexo,并根据 Hexo 的文档创建了一个站点,并完成了基本的设置。
- 在 Hexo 中,通常有两份配置文件,一个是站点根目录下的
_config.yaml
;另外一个是主题目录下的_config.yaml
。 为了描述方便,在以下说明中,将前者称为 站点配置文件,后者称为 主题配置文件。
更换主题
- 在Hexo框架下更换主题变得异常简单,只要将主题文件下载并且放置到站点目录的
themes
文件夹下,然后修改一下配置文件即可。你可以从Github上找到这些主题。
启用主题
- 克隆完成后,修改主题文件夹名称,将其自定义为
***
。 然后打开 站点配置文件,找到theme
字段,并将其值更改为***
。
文件夹名称可自由修改,并不是唯一的,只需
theme
字段与之对应即可。
注意
- 为防止造成冲突,主题以
_config.template.yaml
文件取代_config.yaml
文件,用以参考配置。 需要手动将material
文件夹中的_config.template.yaml
复制一份并重命名为_config.yaml
。
主题基本配置
Language
- 编辑 站点配置文件,将
language
设置成你所需要的语言。
例如:选用简体中文,则配置为:
language: zh-CN
Head
用于配置生成的 HTML 文件的头部信息。
favicon
: 网站的 faviconhigh_res_favicon
: 高清 faviconkeywords
: 网站关键词site_verification
: 搜索引擎验证
更方便的与Github关联
- 使用 ssh实现与github的免密上传。
生成ssh的密钥文件
在命令行中输入
ssh-keygen -t ecdsa -b 256 -C "your_email@example.com"
- 这行命令将会生成一个以your_email@example.com为标签的ssh key,接着bash会显示:
Generating public/private rsa key pair. Enter file in which to save the key (/c/Users/you/.ssh/id_rsa): [Press enter]
- 如果想要为私钥设置密码,请设置密码,如果不想设置则直接回车然后出现:
Enter passphrase (empty for no passphrase): [Type a passphrase] Enter same passphrase again: [Type passphrase again]
- 再次确认你的密码,或两次回车设置为空
ssh-keygen 有如几种参数:
1. -t 为指定加密算法类型,支持rsa,dsa,ecdsa。
2. -b 指定密钥大小。
3. -f 指定生成密钥保存位置与名称。
4. -C 添加注释。默认为本机主机名和用户。
将ssh Key 添加到github上
- 将本地生成的公钥
id_rsa.pub
中的内容复制下来。
2.打开https://github.com/settings/ssh 并且登录,点击Add ssh Key,将复制的内容粘贴到Key框中,在Title框中可以输入自己方便记忆的名字。 - 当网页显示添加成功后,打开命令行输入
ssh ‐T git@github.com
- 命令行出现以下回执:
Are you sure you want to continue connecting (yes/no)?
- 输入yes后如果看到:
Hi username! You've successfully authenticated, but GitHub does not provide shell access.
- 成功显示如上文字就说明成功了,如果出现错误提示请仔细检查自己的操作。
修改配置文件
- 修改站点配置文件,中的
_config.yml
,将部署方式从https方式修改为ssh方式。# Deployment ## Docs: https://hexo.io/docs/deployment.html deploy: type: git repository: https://github.com/minifullc/minifullc.github.io.git branch: master
- 修改为:
# Deployment
## Docs: https://hexo.io/docs/deployment.html
deploy:
type: git
repo: git@github.com:MiniFullC/MiniFullC.github.io.git
branch: master
参考