沒辦法啊,yilia實在太符合個人要求了。所以我成功的從jekyll叛逃到了hexo。node
下面說說個人叛逃的過程吧。git
!!如下過程默認windows系統,而且git已經安裝並配置好,github帳號配置好和pages都會使用。github
到node.js官網下載最新版本的安裝好,安裝直接一路點下去就能夠了。npm
打開Git Bash,使用命令npm -v
看看node.js是否安裝好,若是輸出對應的版本信息,說明已經安裝好了。若是出現npm既不是能夠執行程序等balabala什麼的,再去檢查一下環境變量path是否添加,若是懶得檢查了,那就再打開安裝包安裝一遍就能夠了windows
好,既然npm能夠用,那就安裝hexo瀏覽器
npm intall -g 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
預覽效果。
修改博客根目錄下的_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服務器上。
安裝燒製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的預覽裏面的連接點開了不會打開新標籤頁,而是直接在當前頁面跳轉。