个人博客
漫谈
鲁迅曾说过,
知识需要不断积累、总结和沉淀,思考和写作是成长的催化剂。
为了更好的记录自己在前端和其他方面的成长,身为周老爷子粉丝的我遂下定决心动手搭个个人博客。查资料的过程中发现了两大搭建博客利器:
一进 hugo 主页(gsay 同学叫它霍格),就被它 The world’s fastest framework for building websites
的标题吸引,于是点击顶部的 Themes
开始寻找合适的主题。作为极简主义者,theme 当然得精挑细选,先挑了几个喜欢的:
比较后最终选择了 even,鉴于 hugo 下 even 的文档不详细,缺少很多配置说明,hexo 相同 theme 的 wiki 写的很详细,所以抛弃了 hugo,投入了 hexo 的怀抱。参照 even的wiki 和 hexo的文档,学习了配置、命令,修改了相关配置,在本地 4000 端口成功把项目跑起来,将资源部署在 github 上。
搭建过程
以下安装过程均在 macos,其他 os 请参考 官方文档
安装前提
安装 hexo-cli
1 | npm install hexo-cli -g |
服务启动成功后可以在 localhost:4000 看到默认 theme 的博客,然后可以通过修改配置文件替换掉默认的 theme,我使用的是 even,所以只写了其相关的配置说明。
安装自定义 themes(even)
在创建的 blog 目录下:安装 hexo-renderer-scss
插件
1 | npm install hexo-renderer-scss --save |
将主题下载到 /themes
目录下:
1 | git clone https://github.com/ahonn/hexo-theme-even themes/even |
修改博客根目录下的配置文件(_config.yml
),启用 Even 主题。 修改 theme
字段为 even
:
1 | # Extensions |
在博客根目录下运行 hexo s
启动本地 hexo 服务,访问 http://localhost:4000 预览主题,然后就可以阅读 Wiki,根据文档修改相关内容的配置。
建议根据文档生成标签页、分类页、自定义页面,可以通过配置文件选择是否显示。标签页和分类页生成后不用添加内容,自定义页面一般需要添加。
标签页
说明:文章的标签
目录名:tags
创建方法:写文章时,在 markdown 文件头部
---
包裹的部分添加下面代码,表示为此文章创建了 hexo 和 even 两个 tag1
2
3
4
5
6---
title: 个人博客
tags:
- hexo
- even
---
分类页
- 说明:文章的分类
- 目录名:categories
- 创建方法:同 tags
如果您有过使用 WordPress 的经验,就很容易误解 Hexo 的分类方式。WordPress 支持对一篇文章设置多个分类,而且这些分类可以是同级的,也可以是父子分类。但是 Hexo 不支持指定多个同级分类。下面的指定方法:
categories:
- Diary
- Life
会使分类
Life
成为Diary
的子分类,而不是并列分类。因此,有必要为您的文章选择尽可能准确的分类。自定义页面
- 说明:一般是博客作者的信息,可以添加爱好,联系方式啥的,是对个人信息的补充,让别人更好更全面的认识自己。
- 目录名:about
发布到 GitHub
在 GitHub 新建个仓库,命名为
xxx.github.io
,xxx
是你 github 用户名修改
_config.yml
配置文件(不是 themes 目录下面的),添加配置1
2
3
4
5deploy:
type: git
repo: https://github.com/xxx/xxx.github.io.git
branch: master
message:注意:
.git
别忘了带安装 hexo-deployer-git
1
npm install hexo-deployer-git --save
在本地 blog 目录下:
1
2
3hexo clean
hexo g
hexo d电脑端或手机端访问
xxx.github.io
查看效果
其他说明
scaffolds
文件夹下的文件是模板文件,即运行hexo new [layout] <title>
生成的 markdown 会按照此模板来生成。创建文章时注意 layout,一般写文章用的是 post(默认,可在配置文件中进行更改),/about 页面是 page,/categories 是 categories,/tags 是 tags。hexo clean
会删除缓存数据和hexo g
命令创建的 public 静态资源。比方说,你创建了 5 个 tag 和 3 个 categories,然后你觉得太多了或者想删了再加几个,这个时候hexo clean
就派上用场了,如果不用此命名,之前创建的 tag 和 categories 一直在缓存中,对页面的结果造成影响。
参考链接
Author: 王富康
Link: http://wfk007.github.io/2018/05/08/my-first-blog/
License: 知识共享署名-非商业性使用 4.0 国际许可协议