hexo+next+GitHub搭建靜態(tài)博客(四)-添加站內(nèi)搜索

博客寫多了(汗!我寫的并不多),查找是個問題,所以我想添加個站內(nèi)搜索功能。NexT主題支持集成 Swiftype、 微搜索、Local Search 和 Algolia,但Swiftype和Algolia都只有一段時間的試用期。所以我采用了Hexo提供的Local Search,原理是通過hexo-generator-search插件在本地生成一個search.xml/json文件,通過這個文件實現(xiàn)搜索功能。

為hexo和next增加站內(nèi)搜索功能

安裝插件

  npm install hexo-generator-search
  npm install hexo-generator-searchdb

修改hexo配置

在你的hexo目錄下的_config.yml中增加如下配置:

search:
  path: search.xml
  field: post
  format: html
  limit: 10000

配置上之后,其實搜索已經(jīng)配置完成了,但現(xiàn)在我們還看不到搜索的入口,接下來我們需要在next的主體上進(jìn)行配置

配置next中的搜索入口

打開themes\next_config.yml,打開local search:

# Local search
local_search:
  enable: true
  # if auto, trigger search by changing input
  # if manual, trigger search by pressing enter key or search button
  trigger: auto
  # show top n results per article, show all results by setting to -1
  top_n_per_article: 1

接下來就可以運行:

$ hexo s

在本地打開http://localhost:4000/進(jìn)行查看了。

travis-ci構(gòu)建搜索模塊

如果你的博客是使用travis-ci自動進(jìn)行構(gòu)建的話,需要將上面提到的兩個插件在.travis.yml中進(jìn)行配置:

# S: Build Lifecycle
install:
  - npm install
  - npm install hexo-generator-search
  - npm install hexo-generator-searchdb

效果圖如下:

20170913111047.png

歡迎訪問我的博客:http://atecher.com/,有更多精彩文章!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

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