由于我們新搭建的基于Hexo的博客默認(rèn)的博客主題都為主題默認(rèn),系統(tǒng)默認(rèn)多多少少會(huì)有點(diǎn)不如人意翠桦,那么這就需要我們自己一步步的進(jìn)行設(shè)置了。
在 Hexo 中有兩份主要的配置文件阴挣,其名稱都是_config.yml
摘投。 其中炭菌,一份位于站點(diǎn)根目錄下(Blog目錄下),主要包含 Hexo 本身的配置客蹋;另一份位于主題目錄下(Blog-->themes-->next),這份配置由主題作者提供昙衅,主要用于配置主題相關(guān)的選項(xiàng)华糖。
為了描述方便,在以下說明中绑莺,將前者稱為站點(diǎn)配置文件蛤铜, 后者稱為 主題配置文件撰洗。
** 切記所有的配置文件所有屬性的設(shè)置,其:
后必須有一個(gè)空格。
安裝theme
你可以到Hexo官網(wǎng)主題頁去搜尋自己喜歡的theme。那么我們這里以hexo-theme-next為例
終端cd到 blog
目錄下執(zhí)行如下命令:
$ git clone https://github.com/iissnan/hexo-theme-next themes/next
將blog
目錄下_config.yml
里theme
的名稱landscape
修改為next
終端cd到blog
目錄下執(zhí)行如下命令(每次部署文章的步驟):
$ hexo clean //清除緩存文件 (db.json) 和已生成的靜態(tài)文件 (public)
$ hexo g //生成緩存和靜態(tài)文件
$ hexo d //重新部署到服務(wù)器
到這里凰浮,接著上篇文章的配置贱鄙,就可以看到如下的界面:
主題設(shè)定
選擇 Scheme
NexT為我們提供了多種不同的外觀弄捕,我們可以根據(jù)自己的喜好進(jìn)行配置。
- Muse - 默認(rèn) Scheme,這是 NexT 最初的版本抚太,黑白主調(diào)搂根,大量留白
- Mist - Muse 的緊湊版本歉嗓,整潔有序的單欄外觀
- Pisces - 雙欄 Scheme舔株,小家碧玉似的清新
修改的話去主題配置文件下搜索scheme
取消前邊的#即可稚补。
#scheme: Muse
#scheme: Mist
scheme: Pisces
設(shè)置預(yù)覽摘要
設(shè)置完模式后凡橱,讀者們會(huì)發(fā)現(xiàn)侨拦,盡管首頁顯示的是所有文章的列表驼卖,但是每一篇文章都顯示了所有內(nèi)容,這樣感覺看起來不舒服蛮寂,這時(shí)候可以啟用預(yù)覽摘要模式象泵,在主題配置文件中找到auto_excerpt
屬性皆的,將enable
設(shè)置為true
竞慢,將length
設(shè)置為想要預(yù)覽到的字?jǐn)?shù)
auto_excerpt:
enable: true
length: 150
設(shè)置語言
編輯站點(diǎn)配置文件
搜索language
設(shè)置你需要的語言环戈,例如簡(jiǎn)體中文:
language: zh-Hans
設(shè)置菜單
菜單配置包括三個(gè)部分元旬,第一是菜單項(xiàng)(名稱和鏈接),第二是菜單項(xiàng)的顯示文本西潘,第三是菜單項(xiàng)對(duì)應(yīng)的圖標(biāo)镀岛。 NexT 使用的是 Font Awesome 提供的圖標(biāo)低淡, Font Awesome 提供了 600+ 的圖標(biāo),可以滿足絕大的多數(shù)的場(chǎng)景掂器,同時(shí)無須擔(dān)心在 Retina 屏幕下 圖標(biāo)模糊的問題。
編輯主題配置文件
搜索menu字段刊橘,菜單內(nèi)容的設(shè)置格式是:item name: link
。其中 item name 是一個(gè)名稱,用于匹配圖標(biāo)以及翻譯辛块。
menu:
home: /
archives: /archives
#about: /about
#categories: /categories
tags: /tags
#commonweal: /404.html
設(shè)置菜單項(xiàng)的顯示文本。在上一步中設(shè)置的菜單的名稱并不直接用于界面上的展示捶码。Hexo 在生成的時(shí)候?qū)⑹褂?這個(gè)名稱查找對(duì)應(yīng)的語言翻譯拦惋,并提取顯示文本锭环。這些翻譯文本放置在 NexT 主題目錄下的 languages/{language}.yml ({language} 為你所使用的語言)。
當(dāng)我們需要增加我們自定義的菜單選項(xiàng)的時(shí)候,可以采用下邊的方法
以簡(jiǎn)體中文為例啥容,若你需要添加一個(gè)菜單項(xiàng)谎懦,比如 something。那么就需要修改簡(jiǎn)體中文對(duì)應(yīng)的翻譯文件 languages/zh-Hans.yml,在 menu 字段下添加一項(xiàng):
menu:
home: 首頁
archives: 歸檔
categories: 分類
tags: 標(biāo)簽
about: 關(guān)于
search: 搜索
commonweal: 公益404
something: 有料
設(shè)定菜單項(xiàng)的圖標(biāo)拴签,對(duì)應(yīng)的字段是 menu_icons
。 此設(shè)定格式是 item name: icon name
彪薛,其中 item name
與上一步所配置的菜單名字對(duì)應(yīng)茂装,icon name
是 Font Awesome
圖標(biāo)的 名字。而 enable
可用于控制是否顯示圖標(biāo)善延,你可以設(shè)置成 false
來去掉圖標(biāo)少态。(注意嚴(yán)格區(qū)分大小寫)
menu_icons:
enable: true
# Icon Mapping.
home: home
about: user
categories: th
tags: tags
archives: archive
commonweal: heartbeat
然后在Hexo根目錄執(zhí)行指令如下:
// 添加分類頁面
hexo new page "categories"
// 添加標(biāo)簽頁面
hexo new page "tags"
// 添加關(guān)于頁面
hexo new page "about"
執(zhí)行完上述指令后,在Hexo根目錄/source/
文件夾下創(chuàng)建三個(gè)文件夾易遣,命名分別為:categories
彼妻、tags
、about
文件夾豆茫,在這些文件夾中分別會(huì)創(chuàng)建一個(gè)以index
命名的Markdown
文件,對(duì)這三個(gè)Markdown
文件內(nèi)容進(jìn)行修改揩魂,使之分別為:
---
title: categories
date: 2017-03-12 22:06:24
type: "categories"
---
---
title: 標(biāo)簽
date: 2017-03-12 17:27:16
type: "tags"
---
---
title: about
date: 2017-03-12 22:07:26
type: "about"
---
完成文件的修改幽邓,然后部署Hexo即可完成菜單選項(xiàng)的添加。
設(shè)置側(cè)邊欄
可以通過修改 主題配置文件
中的 sidebar
字段來控制側(cè)欄的行為火脉。側(cè)欄的設(shè)置包括兩個(gè)部分颊艳,其一是側(cè)欄的位置, 其二是側(cè)欄顯示的時(shí)機(jī)忘分。
sidebar:
position: left 或者 right
設(shè)置側(cè)欄顯示的時(shí)機(jī)棋枕,修改 sidebar.display
的值
- post - 默認(rèn)行為,在文章頁面(擁有目錄列表)時(shí)顯示
- always - 在所有頁面中都顯示
- hide - 在所有頁面中都隱藏(可以手動(dòng)展開)
- remove - 完全移除
sidebar:
display: post
設(shè)置頭像
編輯 主題配置文件
妒峦, 修改字段 avatar
重斑, 值設(shè)置成頭像的鏈接地址。其中肯骇,頭像的鏈接地址可以是:
完整的互聯(lián)網(wǎng)url: http://example.com/avatar.png
站點(diǎn)內(nèi)的地址: 將頭像放置主題目錄下的 source/uploads/(新建 uploads 目錄若不存在)
配置為:avatar: /uploads/avatar.png
或者 放置在 source/images/ 目錄下
配置為:avatar: /images/avatar.png
avatar: uploads/avatar.png
設(shè)置作者昵稱
設(shè)置站點(diǎn)配置文件
,編輯author
字段窥浪。
站點(diǎn)描述/個(gè)性簽名
設(shè)置站點(diǎn)配置文件
,編輯description
字段笛丙。
閱讀次數(shù)統(tǒng)計(jì)
閱讀統(tǒng)計(jì)我這邊使用的是LeanCloud漾脂。參考 Doublemine 的文章 為NexT主題添加文章閱讀量統(tǒng)計(jì)功能
集成流程如下:
進(jìn)入LeanCloud注冊(cè)賬號(hào)且驗(yàn)證郵箱之后。
點(diǎn)擊控制臺(tái) --------> 點(diǎn)擊創(chuàng)建應(yīng)用-------->彈出的對(duì)話框胚鸯,給應(yīng)用起個(gè)相對(duì)有意義的名字-------->左邊的側(cè)邊欄點(diǎn)擊創(chuàng)建class-------->新建的class命名為Counter
骨稿,權(quán)限設(shè)置為無限制-------->點(diǎn)擊頁面?zhèn)冗厵谏系脑O(shè)置按鈕-------->點(diǎn)擊應(yīng)用Key-------->賦值A(chǔ)ppID和AppKey-------->在主題配置文件
的相應(yīng)位置填入既可(在配置文件中搜索leancloud_visitors
進(jìn)行填寫,防止重復(fù)設(shè)置):
leancloud_visitors:
enable: true
app_id: joaeuuc4hsqudUUwx4gIvGF6-gzGzoHsz
app_key: E9UJsJpw1omCHuS22PdSpKoh
為了安全起見,選擇剛才的設(shè)置界面下的安全中心坦冠,在Web 安全域名
中填入我們自己的博客域名形耗,來確保數(shù)據(jù)調(diào)用的安全.
添加社交鏈接
我們?nèi)绻M趥€(gè)人博客中加入自己的簡(jiǎn)書和Github鏈接以提高訪問量,接下來了解一下社交鏈接如何添加:
- 添加鏈接
在主題配置文件
中找到social
屬性辙浑,在其下方添加社交鏈接激涤,其格式為:社交平臺(tái)名稱:鏈接
。例如:
social:
Github: https://github.com //這里寫你個(gè)人的github的主頁地址
- 添加鏈接圖表
鏈接的圖標(biāo)全部來自于Font Awesome 判呕,其配置方式也很簡(jiǎn)單倦踢,在主題配置文件中找到social_icons
,修改其狀態(tài)值為true
侠草,然后配置對(duì)應(yīng)鏈接的圖標(biāo)硼一,其格式為:社交平臺(tái)名稱(與添加鏈接名稱保持一致): Font Awesome中的圖標(biāo)的名字(區(qū)分大小寫)
social_icons:
enable: true
Github: github
添加評(píng)論功能
- 注冊(cè)有言賬號(hào)
打開友言官網(wǎng),單擊“注冊(cè)”按鈕后梦抢,按照流程注冊(cè)賬號(hào)般贼。 - 獲取uid
注冊(cè)完成之后會(huì)在下方看到后臺(tái)管理,點(diǎn)擊進(jìn)入可看到自己的用戶ID奥吩,將其復(fù)制下來哼蛆。
- 主題配置文件設(shè)置uid
打開主題配置文件
在其中找到屬性youyan_uid
,然后在:后添加之前復(fù)制的uid
youyan_uid: 你剛才復(fù)制的有言u(píng)id
到這里霞赫,進(jìn)行部署腮介,在我們的博客上就能看到評(píng)論功能了。
添加搜索功能
更多搜索服務(wù)可以點(diǎn)擊這里傳送門
- 注冊(cè)Algolia端衰,創(chuàng)建Index
在Algolia官網(wǎng)注冊(cè)一個(gè)賬戶叠洗,完成賬戶注冊(cè)后,創(chuàng)建一個(gè)Index旅东,如下圖:
![Uploading QQ20170802-104759@2x_135446.png . . .]
- 安裝Hexo Algolia(我按照官方給出的教程進(jìn)行安裝灭抑,當(dāng)我
Hexo Algolia
的時(shí)候提示我FATAL Something's wrong. Maybe you can find the solution here: http://hexo.io/docs/troubleshooting.html
,網(wǎng)上查了下抵代,說可能是因?yàn)間it的版本太新腾节,卸載換舊版本就好。為此我放棄了這種方法荤牍。)
在Hexo根目錄執(zhí)行如下指令案腺,進(jìn)行Hexo Algolia的安裝:
npm install --save hexo-algolia
執(zhí)行完指令后,讀者們可能會(huì)發(fā)現(xiàn)安裝失敗康吵,或發(fā)現(xiàn)安裝成功后實(shí)現(xiàn)的搜索功能可以搜索但是不可以點(diǎn)擊搜索到的文章劈榨,這是因?yàn)?.1.0版本NexT在package.json
文件的配置中存在錯(cuò)誤。
到Hexo
的根目錄晦嵌,在其中找到package.json
文件同辣,修改其中的hexo-algolia
屬性值為^0.2.0
"hexo-algolia": "^0.2.0"
然后再執(zhí)行上述的安裝指令拷姿。
- 獲取Key,修改站點(diǎn)配置
完成Hexo Algolia后邑闺,回到Algolia官網(wǎng)的Dashboard,在左側(cè)導(dǎo)航欄選擇API Keys一項(xiàng)棕兼,跳轉(zhuǎn)到如下圖所示的頁面:
基于這個(gè)頁面的Key陡舅,編輯站點(diǎn)配置文件,在文件內(nèi)容最后添加如下圖所示的信息伴挚,包括 ApplicationID
靶衍、Search-Only API Key
、 Admin API Key
和indexName
茎芋,其中apiKey
就是Search-Only API Key
:
algolia:
applicationID: 'applicationID'
apiKey: 'apiKey'
adminApiKey: 'adminApiKey'
indexName: 'indexName'
chunkSize: 5000
當(dāng)配置完成颅眶,在站點(diǎn)根目錄下執(zhí)行 hexo algolia
來更新 Index。請(qǐng)注意觀察命令的輸出田弥。
![Upload QQ20170802-134155@2x.png failed. Please try again.]
更改主題配置文件
涛酗,找到 Algolia Search
配置部分:
# Algolia Search
algolia_search:
enable: false
hits:
per_page: 10
labels:
input_placeholder: Search for Posts
hits_empty: "We didn't find any results for the search: ${query}"
hits_stats: "${hits} results found in ${time} ms"
將 enable
改為 true
即可,根據(jù)需要你可以調(diào)整 labels 中的文本偷厦。
Local Search搜索服務(wù)(這個(gè)搜索服務(wù)相對(duì)簡(jiǎn)單商叹,只需要簡(jiǎn)單三步就能實(shí)現(xiàn)搜索服務(wù))
- 安裝
hexo-generator-searchdb
,在站點(diǎn)的根目錄下執(zhí)行以下命令:
$ npm install hexo-generator-searchdb
- 編輯
站點(diǎn)配置文件
只泼,新增以下內(nèi)容到任意位置:
search:
path: search.xml
field: post
format: html
limit: 10000
- 編輯
主題配置文件
剖笙,啟用本地搜索功能:
# Local search
local_search:
enable: true
添加友情鏈接功能
相信我們的朋友之間也有很多使用其他博客搭建工具如wordpress、jekyll等來搭建自己的博客请唱,寫的文章多了弥咪,當(dāng)然希望可以收獲更多的流量,這時(shí)候好友之間就會(huì)互相幫忙十绑,在自己的博客上添加好友的博客鏈接聚至。實(shí)現(xiàn)功能如下:
在主題配置文件中找到links
屬性,修改links_title
屬性的值為“友情鏈接”(也可以是其他文案)本橙,然后添加上好友的博客名稱和博客地址晚岭,其格式如下:
博客名稱: 博客鏈接
例如:
links_title: 友情鏈接
links:
Mr_默: https://moandroid.github.io
部署好之后,這樣就實(shí)現(xiàn)了友情鏈接了勋功,大家可以去自己博客地址看下坦报。
更多炫酷的效果可以參照[ hexo的next主題個(gè)性化教程]