成功叛逃到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的預覽裏面的連接點開了不會打開新標籤頁,而是直接在當前頁面跳轉。

相關文章
相關標籤/搜索