标签: hexo 原创
由于部分段落的排版无法实现,请查看原文。
地址:http://blog.lujingtao.com/2017/11/20/hexo-theme/
什么是主题?
我们都知道,一个正常的静态网站的基本组成部分有三部分:html文件群,css资源群和javascript文件群。html组成网站的骨架,css规定页面的样式风格,javascript构建页面的各种交互效果与逻辑。他们就像三个兄弟,桃园三结义,方能成就一番大业,此为恒常。
而我们的博客,你的国,也属于网站。但是我们写的文章都是markdown格式的文件,仅仅只是国中的老百姓,本身没什么战斗力,必须要在一个安逸的环境下才能安居乐业。所以没有三兄弟的国是完全招架不住的,更经不起群雄以及他国使者的挑剔眼光。毕竟谁心底里都有一颗壮志雄心,对吧。
于是,三兄弟,构成了主题。
如何使用 or 更换主题
在hexo的官网上,有一个专门的主题页,hexo theme,里面的主题不可谓不琳琅满目。大家可以根据自己的爱好,选择一个对味的。
下面就以个人制作的本主题mello为例。
安装步骤
- 复制主题的仓库地址。进入它的github仓库页mellow,复制
https://github.com/codefine/hexo-theme-mellow.git
- 下载主题到本地博客目录。在命令行中,进入本地博客目录,然后下载主题。
git clone https://github.com/codefine/hexo-theme-mellow.git themes/mellow
。这条命令的尾部的themes/mellow
表示主题文件存放的目录。成功之后,就能在blog/themes
找到下载的主题了。 - 更换使用的主题。目前我们使用的还是默认的landscape主题,要换成新下载的mellow主题。打开站点配置文件
blog/_config.yml
,找到theme: landscape
,把landscape换成mellow。 - 安装依赖。
npm install --save hexo-generator-search hexo-generator-topindex hexo-helper-qrcode hexo-renderer-less
- 至此,更换主题基本结束。然后运行
hexo clean
->hexo g
->hexo s
就可以预览主题了。
可能会出现的坑
Q : 运行命令的时候报错,或者不报错,但是打开主题后没有样式文件?
A : 出现这个问题大部分情况是因为缺少该主题必要的依赖。这个依赖囊括各种css预处理器以及主题内部某些功能需要的组件,不同主题开发者由于开发习惯以及理念的不同,可能会衍生出各种五花八门的依赖。所以这就需要我们仔细阅读主题文档,把这些依赖都安装好,还有可能需要设置一些东西,才能正常使用。
Q : 主题能正常显示,但是里面的某些功能失效或者报错?
A : 这些主题都是开发者从零开始一点一点写出来的代码集合,出现某些bug再正常不过了,可能开发者并没有发现,这就需要我们使用者来主动联系开发者,帮助完善主题功能,让更多的人更安心的使用。所以遇到这种问题,不要慌,尽情的打小报告就行,哈哈哈。
Q : 主题好是好,但是某些功能我觉得不需要,某些功能我觉得很有必要但是没有?
A : 关于现有功能的增删问题,一般一个结构良好的主题都会在主题配置文件themes/主题文件包/_config.yml
中留有相应的功能接口,我们只需要改变相应接口的布尔值就能实现功能开启与关闭了,一般true表示开启,而false表示关闭。但是如果咱们需要的功能现有主题并没有,或者主题并没有留下功能开启关闭的接口,这就需要咱们自己看着办了。动手能力强的,可以直接修改源文件,不想自己亲自上阵的那就只能联系开发者了。
Q : 换了主题之后,在部署的时候粗现了Error: ENOENT的错误,并且博客仓库中的主题目录为空,没有部署上去?
A : 这是因为这个主题是从github上直接clone下来的,在主题文件内会默认带有一个.git
的隐藏目录,这个目录和deploy插件冲突。解决方法也很简单,就是删掉.git
。用cd themes/cafe
进入cafe主题中,然后用rm -rf .git
删除,再用cd ..
返回到博客目录,重新生成并部署。这样做之后的缺点就是断开了与主题仓库之间的链接,无法使用git pull
来更新主题,需要手动更新。出现这个错误多半是因为目录中有.git
,全部找到并且删除就行了。
主题推荐
折腾主题的这个阶段几乎是每个人都要经历的,所以上述的很多主题我也都试过,不乏一些空有颜值内在空虚的,要么就是bug层出不穷影响使用了,要么就是作者afk联系不上了。真是没想到你们竟然是这样的主题?!
经过本人海量实践,在此只推荐两个主题:
-
NexT
- 优点:从作者专门为文档开发了一整套网站来看,可以说是功能非常健全的主题了,几乎能满足任何hexo使用者的所有需求。
- 缺点:有点笨重。也不利于二次开发及边缘开发。
-
Mello
- 优点:作者是博主本人!
- 缺点:
过于完美主题还很年轻,还有很长的路要走。
本人制作的主题已经被官方收录,正在完善文档中,也会持续更新,欢迎大家使用,如果能在使用过程中提出一些宝贵的意见那绝对是极好的。如果觉得这小伙子做的主题还不错,请在仓库右上角star一下,以示鼓励。
网友评论