hexo + github pages 创建你的个人博客
为什么要创建自己的博客
自己的博客是写在CSDN,shu-frank的专栏。但为什么还要自己setup blog 呢?
hexo
hexo 安装
创建 github pages 和创建普通的 github 仓库没太大区别(记住仓库名称是 username.github.io)。以下安装基于 mac。
- 安装 node 和 npm如果想安装其他版本的 node,可以使用
1
brew install node
brew search node
,找到对应的版本包然后安装。 - 安装 hexo
1
npm install -g hexo-cli
- hexo init
hexo 初始化并自动创建博客目录,根据提示,初始化完成后,进入到博客目录,执行npm install
1
hexo init shufanhao.github.io
- 常用命令
1
2
3
4
5hexo d -g 生成并部署
hexo s 本地部署
hexo g 生成站点
hexo clean
hexo new 新建文章
基础配置
一下是一些基础配置,主题选择,页面布局等,我们只需要记住两个配置文件就行了。
- 站点配置文件
_config.yml
- 主题配置文件
themes/主题名/_config.yml
,这里就是themes/stun/_config.yml
themes stun 安装
用github submodule 管理themes,创建.gitmodules
1 | [submodule "themes/stun"] |
启用 stun
编辑站点配置文件,修改 theme 选项。
1 | theme: stun |
新建标签,分类,关于页面
会在 source 目录下生成对应的文件夹。这几个页面也是 markdown 文件,你可以自由编辑,比如关于页面。
1 | hexo new page tag |
设置站点语言
修改站点配置文件,如果你发现配置不管用的话,可以查看下 themes/stun/languages
目录,看下是否存在 zh-Hans.yml 或者 zh-CN.yml。如果只存在 zh-CN.yml,重命名成 zh-Hans.yml 即可。
1 | language: zh-Hans |
设置侧边栏菜单
修改主题配置文件,想显示哪个菜单,把对应的注释去掉就行。
1 | menu: |
侧栏位置
修改主题配置文件
1 | sidebar: |
头像
修改主题配置文件,可以选择是否圆框,是否鼠标点击头像旋转。
1 | # Sidebar Avatar |
站点描述
修改站点配置文件,主要是站点名称,描述,关键字,作者这些
1 | title: Frank Blog |
开启阅读数,字数统计
修改主题配置文件
1 | # Post wordcount display settings |
添加搜索栏
安装搜索插件
1 | npm install hexo-generator-searchdb --save |
修改站点配置文件,添加 search 配置
1 | # search |
相关文章
安装插件
1 | npm install hexo-related-popular-posts --save |
修改主题配置文件
1 | related_posts: |
社交地址
修改主题配置文件,用自带的图标其实就可以了
1 | social: |
自动生成摘要
自动生成摘要在 stun7 中被去除掉了。不想显示全文的话,有两种方式控制,建议第一种方式
<!--more-->
,会显示之前的内容,之后的内容不会显示- 文章 meta 中添加 description字段
不要在设置啥 auto_encrypt 了。。。
添加 Disqus 评论系统
访问 disqus.com
,选择 i want to install disqus on my site
。然后跟着提示一步步走,只需要记住自己的 shortname 即可。
修改主题配置文件
1 | Disqus |
部署到 git
安装插件
1 | npm install hexo-deployer-git --save |
具体参考:https://shufanhao.top/posts/1eb3f811/
美化
代码框风格,并添加复制按钮
修改主题配置文件,设置 theme 和 style
1 | codeblock: |
页面动画效果
hexo 内置了一些页面动态效果。如果想打开的话,只需要在主题配置文件里搜索打开即可。
- canvas_nest
- canvas_ribbon
- three_waves
比如 canvas_nest
1 | # Canvas-nest |
页面顶部加载阅读进度条
修改主题配置文件
1 | # Reading progress bar |
文章阅读进度条
安装插件
1 | npm install hexo-cake-moon-menu --save |
修改主题配置文件,添加如下内容
1 | moon_menu: |
stun 自带了文章阅读进度条(pace 配置),但是不如这个插件好看。
鼠标点击烟花效果
参考 小丁的博客
修改页面布局为圆角
新建 source/_data/variables.styl
1 | // 圆角设置 |
修改主题配置文件,打开自定义 variables.styl 的设置
1 | custom_file_path: |
添加粒子时钟
参考 小丁的博客
去掉底部·强力驱动·
修改主题配置文件
1 | footer: |
关于页面显示 github commit chart
参考 小丁的博客
优化加速
启用 FastClick
修改主题配置文件
1 | fastclick: true |
启用 QuickLink
修改主题配置文件,quickclick 用于资源文件的预加载
1 | quicklink: |
SEO
主要就是生成站点地图并提交百度和谷歌收录,生成永久链接,参考: https://shufanhao.top/posts/cfd1b897/