從零開始用Hexo建立部落格

第一篇文章,就用來簡單記錄如何用hexo建立個人部落格。

(本篇範例是在Mac和vscode上操作)

Hexo 是一個快速又簡單上手的部落格框架。相比於其他部落格平台,客製化空間非常大,重點是完全免費!作為一個剛起步的工程師和部落客,實在是太~香~了~

在這篇文章中,我將介紹如何安裝和初步設定 Hexo,以及如何用它來建立和發布你的第一篇部落格文章。

開始介紹之前,先分享也是由hexo架構的網站,一起看看hexo的可能性~

Hexschool

好,開始!

環境準備

1. 安裝 Node.js

Hexo 是基於 Node.js 開發的,安裝 Node.js 可以讓我們使用 npm(Node Package Manager)來管理所需的套件。

2. 安裝 Git

Hexo 的設定及部署需要使用到 Git,以管理和上傳你的部落格文章和設定。

可以輸入指令 $ node -v$ git -v 來確認是否安裝成功

1_version.jpg

Hexo 的安裝與設定

1. 在終端機中用 npm 安裝 hexo-cli,這是用來建立和管理你的 Hexo 部落格的指令行工具。輸入以下指令即可:
1
$ npm install -g hexo-cli

如果出現問題的話,可以試著在前面加上萬能的 sudo 來確保安裝成功。

2_i_hexo.jpg

這邊也可以輸入指令 $ hexo -v 來確認是否安裝成功。

2. 建立一個新的 Hexo 專案。在終端機中輸入以下指令,其中的 blog-example 是你的部落格名稱,你可以換成你想要的名字:
1
hexo init blog-example

成功的話會出現這個文件夾,像這樣:

3_sidebar-files.jpg

3. 進入你的部落格目錄,並安裝需要的套件。輸入以下指令:
1
2
cd blog-example
npm install

cd 是進入文件夾的意思,請確保進入建好的Hexo文件夾再往下操作喔。

這樣你的 Hexo 部落格就建立好了。

4. 接下來你可以用以下指令來啟動你的部落格伺服器,然後點開terminal中的網址,通常是 http://localhost:4000 ,就可以看到你的部落格了:
1
hexo server

4_server.jpg

5_hexo_preview.jpg

Voila!可以開始寫你的第一篇文章囉。

寫你的第一篇文章

在 Hexo 中,你的部落格文章會被放在 source/_posts 目錄下。可以使用以下指令來建立一篇新的文章:

1
hexo new "我的第一篇文章"

這樣就會在 source/_posts 目錄下建立一個名為 “我的第一篇文章.md“ 的 markdown 文件,可以在這個文件中寫你的文章。

然後,用以下指令來生成你的部落格網頁:

1
hexo generate

最後,刷新頁面就可以看到你更新了

以上就是如何使用 Hexo 建立部落格的基本步驟

那麼接下來,就是怎麼把hexo部落格部署到GitHub上呢? 這是一個相對複雜的過程,但只要按照步驟逐步進行,你也可以輕鬆完成部署。

Hexo 部署到 GitHub

如果你還不太認識GitHub不知怎麼開始,請先看這邊

部署到 GitHub 的流程主要有三個步驟:

1. 在 GitHub 上建立一個新的 repository。

這個 repository 的名稱必須是 你的 GitHub 用戶名.github.io。例如,如果你的 GitHub 用戶名是 abc,那麼你的 repository 的名稱就應該是 abc.github.io

我原以為這個repo的名字可以任意取,但原來作為個人網站用途的話,這樣的命名規則是為了確保你的網站可以直接去到 https://username.github.io 這個域名。

並且,看到 Ray的這篇hexo教學文 提到:

> 另外請不要將部落格架設在資料夾內,例如我最近最常看到的架站方式就是 `自己名稱.github.io/blog` 這種方式架站會有極高的可能性遇到一些怪問題,以下都是目前有人跟我反應的
> 
> - CSS & JS 出現問題
> - 文章無法正常顯示
> - 第三方套件無法取得正確網址路徑…等等問題
> 
> 所以強烈建議部落格建立在根目錄上就好,就像我的 [部落格](https://github.com/hsiangfeng/hsiangfeng.github.io) 一樣,這樣子你可以少踩一點雷唷
> 

我第一個個人網站repo就是取名blog…雖然目前還未有什麼問題,但為了不出錯,在這個範例中我們還是聽取建議吧 XD

6_git_repo.jpg

2. 上面的步驟完成後,回到vscode,在你的 Hexo 部落格文件找到設定檔 _config.yml ,設定你的部署 repository。在最下方的 deploy 選項設定為以下內容:
1
2
3
4
deploy:
type: git
repo: https://github.com/username/username.github.io.git
branch: gh-pages # 或者你希望部署到的其他分支

username記得改為你的用戶名

7_config.jpg

第16行的url也要改成你的repo網址
7-1_config.jpg

3. 接著要安裝git插件
1
npm install hexo-deployer-git --save
4. 在終端機中,使用以下指令來部署你的部落格到 GitHub:
1
hexo deploy

這個指令會將你的部落格網頁生成,然後將其推送到你在 _config.yml 中設定的 GitHub repository。

這樣,你的部落格就成功部署到 GitHub 上囉!你可以在瀏覽器中輸入 https://你的 GitHub 用戶名.github.io 來訪問你的部落格。

之後再有修改網站內容,在deploy之前需要:

1
2
hexo clean // 清除快取和以生成的靜態頁面
hexo generate // 生成靜態頁面

回到你的GitHub repo頁面並刷新,可以看到文件已經在上面了。

5. 現在來開啟GitHub Pages。點選 Settings,拉到最下方的 GitHub Pages,在 Source 選擇 gh-pages branch,然後點選 Save。
![8_gitpages_setting1.jpg](https://firebasestorage.googleapis.com/v0/b/blog-1d76a.appspot.com/o/8_gitpages_setting1.jpg?alt=media&token=8acbe05d-1c15-4526-a0c7-e43c24334cb9)

![9_gitpages_setting2.jpg](https://firebasestorage.googleapis.com/v0/b/blog-1d76a.appspot.com/o/9_gitpages_setting2.jpg?alt=media&token=afc7bb66-bd45-47f2-a8fe-8758207f670a)

在瀏覽器中輸入 https://你的 GitHub 用戶名.github.io 就可以看到你的部落格嚕。

自定義你的部落格

雖然 Hexo 有很多的主題可以選擇,但是我們肯定還是希望自己的部落格是自己的形狀。那麼可以修改 _config.yml 文件來自定義你的部落格的設定。
在 _config.yml 中,你可以設定你的部落格的標題、描述、語言、主題等設定。你也可以設定你的部落格的導航欄、側邊欄、底部欄等界面元素。

10_costumise_config.jpg

此外,你也可以為你的部落格添加插件來擴展其功能。Hexo 支持許多插件,例如可以讓你添加圖片輪播、社交分享按鈕、評論系統等功能。

以上就是如何使用 Hexo 建立和部署你的部落格的全部基本步驟。希望這篇文章可以幫助你順利地建立你的 Hexo 部落格,並將其部署到 GitHub。

一起快快樂樂賣肝啦(..•˘ᴗ˘•..)