Hexo之Next主題

由于我們新搭建的基于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為例

next配置文件的文檔傳送門

終端cd到 blog
目錄下執(zhí)行如下命令:

$ git clone https://github.com/iissnan/hexo-theme-next themes/next

blog目錄下_config.ymltheme的名稱landscape修改為next

終端cd到blog目錄下執(zhí)行如下命令(每次部署文章的步驟):

$ hexo clean           //清除緩存文件 (db.json) 和已生成的靜態(tài)文件 (public)
$ hexo g             //生成緩存和靜態(tài)文件
$ hexo d             //重新部署到服務(wù)器

到這里凰浮,接著上篇文章的配置贱鄙,就可以看到如下的界面:

QQ20170801-190321.png

主題設(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 nameFont 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彼妻、tagsabout文件夾豆茫,在這些文件夾中分別會(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ù)制下來哼蛆。
32352346-7342-4DC5-A633-8127A99BA860.png
  • 主題配置文件設(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)到如下圖所示的頁面:
QQ20170802-111306@2x.png

基于這個(gè)頁面的Key陡舅,編輯站點(diǎn)配置文件,在文件內(nèi)容最后添加如下圖所示的信息伴挚,包括 ApplicationID靶衍、Search-Only API KeyAdmin API KeyindexName茎芋,其中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è)性化教程]

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市狂鞋,隨后出現(xiàn)的幾起案子片择,更是在濱河造成了極大的恐慌,老刑警劉巖骚揍,帶你破解...
    沈念sama閱讀 216,402評(píng)論 6 499
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件字管,死亡現(xiàn)場(chǎng)離奇詭異啰挪,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,377評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門娜氏,熙熙樓的掌柜王于貴愁眉苦臉地迎上來絮供,“玉大人,你說我怎么就攤上這事锰什。” “怎么了丁逝?”我有些...
    開封第一講書人閱讀 162,483評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵汁胆,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我霜幼,道長(zhǎng)嫩码,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,165評(píng)論 1 292
  • 正文 為了忘掉前任罪既,我火速辦了婚禮铸题,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘琢感。我一直安慰自己回挽,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,176評(píng)論 6 388
  • 文/花漫 我一把揭開白布猩谊。 她就那樣靜靜地躺著千劈,像睡著了一般。 火紅的嫁衣襯著肌膚如雪牌捷。 梳的紋絲不亂的頭發(fā)上墙牌,一...
    開封第一講書人閱讀 51,146評(píng)論 1 297
  • 那天,我揣著相機(jī)與錄音暗甥,去河邊找鬼喜滨。 笑死,一個(gè)胖子當(dāng)著我的面吹牛撤防,可吹牛的內(nèi)容都是我干的虽风。 我是一名探鬼主播,決...
    沈念sama閱讀 40,032評(píng)論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼寄月,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼辜膝!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起漾肮,我...
    開封第一講書人閱讀 38,896評(píng)論 0 274
  • 序言:老撾萬榮一對(duì)情侶失蹤厂抖,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后克懊,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體忱辅,經(jīng)...
    沈念sama閱讀 45,311評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡七蜘,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,536評(píng)論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了墙懂。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片橡卤。...
    茶點(diǎn)故事閱讀 39,696評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖损搬,靈堂內(nèi)的尸體忽然破棺而出碧库,到底是詐尸還是另有隱情,我是刑警寧澤场躯,帶...
    沈念sama閱讀 35,413評(píng)論 5 343
  • 正文 年R本政府宣布谈为,位于F島的核電站旅挤,受9級(jí)特大地震影響踢关,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜粘茄,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,008評(píng)論 3 325
  • 文/蒙蒙 一签舞、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧柒瓣,春花似錦儒搭、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至磺平,卻和暖如春魂仍,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背拣挪。 一陣腳步聲響...
    開封第一講書人閱讀 32,815評(píng)論 1 269
  • 我被黑心中介騙來泰國(guó)打工擦酌, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人菠劝。 一個(gè)月前我還...
    沈念sama閱讀 47,698評(píng)論 2 368
  • 正文 我出身青樓赊舶,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親赶诊。 傳聞我的和親對(duì)象是個(gè)殘疾皇子笼平,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,592評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容

  • 搭建hexo的教程實(shí)在太多了,折騰了幾天舔痪,總算搞定了出吹,現(xiàn)在去看參考文章也是能看懂,不過辙喂,官方文檔也寫的相當(dāng)詳細(xì): ...
    Michael翔閱讀 21,647評(píng)論 8 26
  • title: hexo之next主題添加分類date: 2018-03-02 13:00:00tags:categ...
    鋼筆先生閱讀 10,812評(píng)論 2 3
  • 設(shè)置中文 找到站點(diǎn)配置文件(hexo根目錄下的稱為站點(diǎn)配置文件捶牢,主題文件夾下的稱為主題配置文件)鸠珠,找到如下字段,更...
    b6cc5e05848d閱讀 2,941評(píng)論 0 1
  • 網(wǎng)上已經(jīng)有很多NexT主題配置的教程秋麸,一搜一大堆渐排;所以我這邊就簡(jiǎn)單說一下我個(gè)人(沒那么搞)的一些配置,這些配置大部...
    玩大神的簡(jiǎn)書閱讀 1,599評(píng)論 0 1
  • 寫在前面 本文為個(gè)人前一篇文章hexo搭建個(gè)人博客--基礎(chǔ)篇的后續(xù)篇,前文主要介紹了如何搭建一個(gè)個(gè)人網(wǎng)站以及綁定域...
    Alvabill閱讀 33,809評(píng)論 10 34