前言
利用Hexo搭建个人blog有段时间了,Hexo是一个基于Node.js的静态博客程序,而作为一个后端代码狗对于js的了解实在太少,所以有必要在这对Hexo做一个简单的总结,顺便记录下搭建过程中遇到的一些蛋疼的问题。
Hexo简介
这里引用下Hexo官网的说法:
Hexo 是一个快速、简洁且高效的博客框架。Hexo 使用 Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页。
Hexo安装
Hexo的安装过程可以参考Hexo官网文档,这里不在详细的列出,需要注意的是现在Hexo已经升级到3.0,而网上搜到的安装过程大多是hexo2.0时的,3.0和2.0有些差异。
Hexo文件夹目录结构
1 | . |
_config.yml
站点_config.yml
整个站点的配置信息,官网上关于_config.yml中的配置参数貌似不是很全。在网上搜到一个比较详细的介绍:
1 | # Hexo Configuration## Docs: http://zespia.tw/hexo/docs/configure.html## Source: https://github.com/tommy351/hexo/ |
主题_config.yml
1 | # Header |
package.json
应用程序的信息。EJS, Stylus 和 Markdown renderer 已默认安装,您可以自由移除。
scaffolds
模板文件
source
存放源文件比如文章的markdown
themes
主题
构建站点中遇到的问题
- icarus主题默认的markdwon引用方式是英文的,显示中文非常不和谐,这个就需要自己去改css样式中的blockquote,路径为icarus\source\css_partial\article.styl
- 代码块显示行号字体过小,可以在icarus\source\css_partial\highlight.styl中修改
- icarus默认是没有目录的,这个可以参考网上的教程
icarus的归档样式不是很好,我参考了@jamspan的代码进行了修改,具体修改可见归档样式修改和分类展示具体列表,另外还需要注意修改主站点配置文件_config.yml中的这段
1
2
3
4
5
6
7# Archives 默认值为2,这里都修改为1,相应页面就只会列出标题,而非全文
## 2: Enable pagination
## 1: Disable pagination
## 0: Fully Disable
archive: 1
category: 1
tag: 1向百度和google提交站点地图,提交过程中关键点在于网站权限认证,我用的是添加meta标签的方式,meta标签需要添加在Hexo\themes\jacman\layout_partial\head.ejs中
之间具体过程可参考- 在首页不全部显示文章内容只显示摘要,可以在文章中添加只显示摘要需要在文章中添加
- 对Hexo进行修改和扩展可以参考Hexo官方给出的api和各种函数