用Hexo建立一個網誌
此為hexo2的時候寫的介紹,已過時
簡介
hexo是一個可以使用Markdown語法產生靜態頁面的部落格工具。
可以配合github page快速建立一個部落格。
安裝環境:Ubuntu16.04
安裝nvm和hexo
1 | sudo apt-get install nvm |
可能會遇到的問題:node或nvm版本過低
初始化hexo
hexo init [folder]
若不加[folder]則在當前目錄
cd [folder]
npm install
常用命令
1 | hexo n |
Layout | 存放資料夾 | 格式 | 範例 |
---|---|---|---|
post (預設) | source/_posts | 動態頁面 | source/_posts/new-post.md |
page | source | 靜態頁面 | source/new-page/index.html |
draft | source/_drafts | 草稿 | source/_drafts/new-draft.md |
靜態頁面用於不常更改,不希望受theme影響的頁面
.md格式代表使用markdown語法
1 | hexo g (= hexo generate) |
設定檔更改
於初始化資料夾中的_config.yml
此為YAML格式,不可使用tab字元
僅列出重要的設定,全部設定內容
Site
title 部落格標題
subtitle 副標題
description 關於此部落格
URL
url 你的部落格網址
permalink 文章的子網址格式,預設為:year/:month/:day/:title/ 參考變數名
Writing
new_post_name 新建立的post名稱格式,個人使用:year:month:day:title.md
auto_spacing 在亞州文字和西方文字之間加上空白
highlight 程式的高亮加註
Archives
開啟/關閉 archive, category, tag 的換頁功能
Pagination
per_page 一頁幾篇文章(0 = 不分頁)
Markdown
hexo markdown parser 支援 github 語法(GitHub Flavored Markdown)
https://help.github.com/articles/github-flavored-markdown/
Extensions
theme 主題名稱
Deploy
type: 發佈的目標格式,目前使用github
repository: git@github.com: [github帳號]
主題
套用主題(pacman)
git clone git@github.com:A-limon/pacman.git themes/pacman
同時_config.yml也要更新: theme: pacman
註:pacman已停止更新,現在有jacman替代
更新主題
1 | cd themes/pacman |
可先備份設定檔_config.yml
修改主題
修改主題後, 要先清除現有生成的主題文件,才會正確顯示
1 | hexo clean |
擴充功能
為Hexo增加Google Analytics
在Analytics中添加自己的網站域名,獲得JS追蹤代碼。
把JS代碼Copy到Hexo的after_footer文件中,after_footer是Hexo主題頁腳的JS代碼文檔,具體位置在/themes/[themename]/layout/_partial
然後重新生成、發佈Hexo。數據統計不會立即生效,需要等待幾個小時,之後登錄Google Analytics就可以查看你的Blog的數據
瀏覽量
- Google Analytics
- 用leancloud計算瀏覽量
在pacman的主題下,after_footer.ejs 需要修改成:
1 | <!--page counter part--> |
- 將留言區改成disqus
- 回到頂部功能
數學公式
使用mathjax(適用tex語法)
http://catx.me/2014/03/09/hexo-mathjax-plugin/
需要注意的是若有兩個底線_
,會變斜體,這是原有的markdown語法之一...
解決方法:用
{ % math-block % } 和 { % endmath-block % }
包覆數學公式
hexo2是math-block, hexo3是math_block
小缺點是會使網頁載入速度變慢(公式的圖片是即時取得的)
圖床
- 網頁端:在hexo的source資料夾建立img資料夾,使用時
[](/img/...)
- imgur, google, dropbox...
Hexo Markdown 格式
- 一句話結尾空白兩格,才會換行
- 標題和符號之間要空白
### Hexo ...
- 其他和github markdown格式相同
Reference
- 最詳細的hexo懶人包 http://ibruce.info/2013/11/22/hexo-your-blog/
- 提供一些Bug的解決方案 http://johnnyfee.github.io/2014/03/22/hexo/
- Markdown寫作淺談 http://jianshu.io/p/PpDNMG
- Hexo 官網 https://hexo.io/