题记:生命的乐趣在于折腾.
话说前天又把博客的主题给换掉了。没办法啊,yilia实在太符合我的品味了。因此我成功的从jekyll叛逃到了hexo。
下面说说我的叛逃的过程吧。
!!以下过程默认windows系统,并且git已经安装并配置好,github账号配置好和pages都会使用。
安装node.js
到node.js官网下载最新版本的安装好,安装直接一路点下去就可以了。
安装hexo
打开Git Bash,使用命令npm -v
看看node.js是否安装好,如果输出对应的版本信息,说明已经安装好了。如果出现npm既不是可以执行程序等balabala什么的,再去检查一下环境变量path是否添加,如果懒得检查了,那就再打开安装包安装一遍就可以了
好,既然npm可以用,那就安装hexo
1 | npm intall -g hexo |
使用hexo
初始化博客
切换到你要搭建博客的文件夹。
输入下面一系列命令。
1 | hexo init |
预览博客
1 | hexo s -i localhost |
然后命令行会提示
1 | INFO Hexo is running at http://localhost:4000/. Press Ctrl+C to stop. |
这时候,打开你的浏览器,输入127.0.0.1:4000
就可以在本地预览你的博客了。当然这时候你的博客还只是一个hexo自动生成的什么也没有的demo。
生成静态的网页
1 | hexo g |
这个命令会生成一个文件夹public,所有的网页都会生成在里面。
!!注意:
不知道为什么,在本地预览的时候并不需要先生成,但是部署到服务器上之前总需要生成一次。
接下来,你只需要修改你的博客,并且添加文章。
修改主题
到github去搜索”hexo-theme”关键字,搜出一堆主题,找一个喜欢的clone下来。
下面以yilia主题为例
1 | #在博客的个目录下 |
然后修改博客根目录下的_config.yml文件,找到themes:的配置,将默认的landscape改成yilia。
然后再用
1 | hexo s -i localhost |
预览你的博客。
最后再根据yilia的说明 配置你的博客即可。
写文章
1 | hexo new [layout] title |
然后hexo会自动的在./source/_posts/下面生成一个md文件,编辑它,写入你的文章内容,然后再用
1 | hexo s -i localhost |
预览效果。
将博客部署到github上
修改博客根目录下的_config.yml 里面的 deploy:后面的配置为
1 | deploy: |
然后安装hexo-deployer-git
插件
1 | npm install hexo-deployer-git --save |
确保你当前使用的ssh-key的公玥已经被添加到了你的github设置里面。
然后只需要在博客根目录下hexo deploy
即可。
!!注意:
每次deploy前都需要用
1 | hexo g |
命令生成一次博客。
因为deploy提取的pbulic文件夹下面的内容push到git服务器上。
给自己的博客添加rss
安装烧制feed的插件。要在博客的根目录下。
1 | npm install hexo-generator-feed --save |
然后在博客的根目录下的_config.yml_文件最后添加上
1 | plugins: |
这样你的hexo在generate你的博客时候会自动的给你生成atom.xml文件。
然后在你的博客里面添加rss订阅图标。
修改./themes/yilia/目录下面的_config.yml文件,把 subnav: 下面的#rss: “#”的注释去掉,并把引号里面的url改成”/atom.xml”就可以了。
修补主题的问题。
点击所有文章,你会发现,如果你的文章数量超过10篇,那么所有文章里面只会显示前10篇,不会把全部列出来。那怎么要把所有文章都列出来呢?
方法一
把根目录下的_config.yml里面的per_page:10改成per_page:0,也就是说把分页功能给关掉。
但是这样有个不好的地方,整个博客的分页功能都被关掉了,也就是说,主页也没有分页了。。
方法二
在\node_modules\hexo-generator-archive\下面找到index.js。修改之。同样的把per_page改成0!
1 | 'use strict'; |
几个小小的遗憾
至于sitemap我还没有折腾过。
听说yilia主题可以配置google analysis。但是我并不知道怎么搞。希望以后能搞定这个问题。到yilia的主题配置文件里面找到google_analytics: ''
, 在单引号里面填上tracking id就可以了。
主题没有 table of contents。
主题的psots 无法显示加粗效果。 已经被大神修复了
由于我没学过nodejs,并且hexo的封装性似乎比jekyll好得多,所以我想手动的修改yilia主题都没办法修改,郁闷之。 现在已经折腾出了点东西,虽然不多.
又发现一个问题,主页上的post的预览里面的链接点开了不会打开新标签页,而是直接在当前页面跳转。 同样被大神修复了.