I think, therefore I am

0%

Hello Hexo

什麼是 Hexo?

在官方Hexo 文件中提到:

Hexo 是一個快速、簡單且強大的網誌框架。Hexo 使用 Markdown(或其他標記語言)解析您的文章,並在幾秒鐘內,透過漂亮的主題產生靜態檔案。

安裝需求

  • Node.js (建議版本需不低於8.10,建議使用 Node.js 10.0 及以上版本)
  • Git

安裝後,在終端機或 Git Bash 輸入以下即可安裝 Hexo。

1
$ npm install -g hexo-cli

建立

Hexo 安裝完成後,依序執行下列指令,Hexo 會在指定資料夾中建立所有你需要的檔案。

1
2
3
$ hexo init <資料夾名稱>
$ cd <資料夾名稱>
$ npm install

在建立的資料夾裡可以看到以下檔案:

hexo-file

上圖其中的檔案裡,較常使用:

  • scaffolds
  • source
  • themes
  • _config.yml
  • package.json

檔案用途介紹:https://hexo.io/zh-tw/docs/setup

檔案調整在後面會講解到。

佈署到 Github 上

題外話,如果想看畫面,可以先用以下指令來啟動 server 來觀看。

1
$ hexo server

啟動後會出現以下,Ctrl + 左點擊即可看到畫面。

1
http://localhost:4000

default-theme

畫面陽春些,之後再調整,先 Ctrl + C 退出 server,來接著做佈署。

在 Github 上開新資料庫。

new repos1

在 Repository name 下方格輸入資料庫名稱。

資料庫名稱命名可以隨意,也可以命名成:

1
<你的帳號>.github.io

差別在於檔案路徑和專案管理不同,個人是命名上方的方式。

new repos2

輸入後,按下 Create repository,會出現 repo 連結。

repo

接著,安裝插件來讓 Hexo 能作佈署。

1
$ npm install hexo-deployer-git --save

再到 _config.yml 裡將以下貼到程式碼後方,並貼入自己的 repo 連結,貼上時要注意冒號前留一格空格。

1
2
3
4
deploy:
type: git // 模式
repo: // 自己 GitHub repos 連結
branch: master // 分支

完成以上後,依序用下方指令來佈署。

1
2
$ hexo generate // 產生靜態檔案
$ hexo deploy // 佈署

現在可以在 Github 的 GitHub Pages 裡,網址點下後看到 Blog。

新增文章前的設定

_config.yml 找到以下這段,並修改成 true,可以在新增文章時再多新增一個資料夾來放圖片。

圖片也可以放到 firebase、postimage,也就不用設定成 true。

1
post_asset_folder: true

打開 scaffolds/post.md,依據個人需求去新增以下變數。

1
2
3
4
5
6
title: {{ title }} // 原有,文章名稱
date: {{ date }} // 原有,文章時間
tags: {{ tags }} // 標籤
categories: {{ categories }} // 分類
thumbnail: // 預覽圖
banner: // 文章開頭圖

其他變數:https://hexo.io/zh-tw/docs/variables

在每次新增空白文章時,只要輸入值即可。

如果需要多個標籤:

1
2
3
tags:
- 標籤 1
- 標籤 2

新增空白文章

1
$ hexo new <title>

新增後文章會存放在 source/_posts,接下來可以開始使用 Markdown 來撰寫文章。

顯示更多

文章完成後,如果首頁顯示過長,可將 <!-- more --> 加入文章,就能有閱讀全文的按鈕。<!-- more --> 的前方要有撰寫些東西才能運作。

常用指令

1
2
3
4
$ hexo new <title> // 新增文章
$ hexo server // 啟動 server
$ hexo generate // 產生靜態檔案
$ hexo deploy // 佈署

指令簡寫

1
2
3
$ hexo s // 啟動 server
$ hexo g // 產生靜態檔案
$ hexo d // 佈署

其他指令

https://hexo.io/zh-tw/docs/commands

再來就是修改樣式。

Hexo 主題