成功叛逃到hexo

前天又把博客的主题给换掉了。

没办法啊,yilia实在太符合个人要求了。所以我成功的从jekyll叛逃到了hexo。node

下面说说个人叛逃的过程吧。git

!!如下过程默认windows系统,而且git已经安装并配置好,github帐号配置好和pages都会使用。github

安装node.js

node.js官网下载最新版本的安装好,安装直接一路点下去就能够了。npm

安装hexo

打开Git Bash,使用命令npm -v看看node.js是否安装好,若是输出对应的版本信息,说明已经安装好了。若是出现npm既不是能够执行程序等balabala什么的,再去检查一下环境变量path是否添加,若是懒得检查了,那就再打开安装包安装一遍就能够了windows

好,既然npm能够用,那就安装hexo浏览器

npm intall -g hexo

使用hexo

初始化博客

切换到你要搭建博客的文件夹。
输入下面一系列命令。服务器

hexo init
npm install

预览博客

hexo s -i localhost

而后命令行会提示hexo

INFO  Hexo is running at http://localhost:4000/. Press Ctrl+C to stop.

这时候,打开你的浏览器,输入127.0.0.1:4000就能够在本地预览你的博客了。固然这时候你的博客还只是一个hexo自动生成的什么也没有的demo。ssh

生成静态的网页

hexo g

这个命令会生成一个文件夹public,全部的网页都会生成在里面。post

!!注意:
不知道为何,在本地预览的时候并不须要先生成,可是部署到服务器上以前总须要生成一次。

接下来,你只须要修改你的博客,而且添加文章。

修改主题

到github去搜索"hexo-theme"关键字,搜出一堆主题,找一个喜欢的clone下来。
下面以yilia主题为例

#在博客的个目录下
git clone https://github.com/litten/hexo-theme-yilia.git /themes/yilia

而后修改博客根目录下的_config.yml文件,找到themes:的配置,将默认的landscape改为yilia。

而后再用

hexo s -i localhost

预览你的博客。

最后再根据yilia的说明 配置你的博客便可。

写文章

hexo new [layout] title
# layout是可选参数, 默认为post
# 下面是一个实例
hexo new post hello-hexo
# 固然, 由于post是默认的,因此
hexo new hello-hexo
# 其实也是同样的效果,
# 若是你须要生成别的类型的文章
# 能够用别的参数,例如:
hexo new photo pictures

而后hexo会自动的在./source/_posts/下面生成一个md文件,编辑它,写入你的文章内容,而后再用

hexo s -i localhost

预览效果。

将博客部署到github上

修改博客根目录下的_config.yml 里面的 deploy:后面的配置为

deploy:
    type:   git
    repo:   git@github.com:username/username.github.io.git
    branch: master

而后安装hexo-deployer-git插件

npm install hexo-deployer-git --save

确保你当前使用的ssh-key的公玥已经被添加到了你的github设置里面。

而后只须要在博客根目录下hexo deploy便可。

!!注意:
每次deploy前都须要用

hexo g

命令生成一次博客。
由于deploy提取的pbulic文件夹下面的内容push到git服务器上。

给本身的博客添加rss

安装烧制feed的插件。要在博客的根目录下。

npm install hexo-generator-feed --save

而后在博客的根目录下的_config.yml_文件最后添加上

plugins:
- hexo-generator-feed

这样你的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\下面找到node.js。修改之。一样的把per_page改为0!

'use strict';

var assign = require('object-assign');

hexo.config.archive_generator = assign({
  per_page: 0,
  yearly: true,
  monthly: true
}, hexo.config.archive_generator);

hexo.extend.generator.register('archive', require('./lib/generator'));

几个小小的遗憾

至于sitemap我尚未折腾过。

据说yilia主题能够配置google analysis。可是我并不知道怎么搞。但愿之后能搞定这个问题。

Update: 到yilia的主题配置文件里面找到google_analytics: '', 在单引号里面填上tracking id就能够了。

主题没有 table of contents。

主题的psots 没法显示加粗效果。

因为我没学过node.js,而且hexo的封装性彷佛比jekyll好得多,因此我想手动的修改yilia主题都没办法修改,郁闷之。

又发现一个问题,主页上的post的预览里面的连接点开了不会打开新标签页,而是直接在当前页面跳转。

相关文章
相关标签/搜索