Butterfly主题搜索配置

Butterfly 主题原生支持三种搜索方式:algolia_searchlocal_searchdocsearch,可以根据需求选择开启其中一种或多种。
实际体验中,algolia 和 docsearch 对于个人博客来说配置或国内网络访问可能有门槛。因此本文推荐并主要介绍本地搜索方案(local_search),即通过插件如 hexo-generator-searchhexo-generator-searchdb,把站内所有文章生成一个本地搜索数据,前端搜索响应快、配置简单。

搜索方式配置总览

在主题配置文件_config.butterfly中,搜索相关选项如下:

1
2
3
search:  
use: # 可选: algolia_search / local_search / docsearch(留空则不启用搜索功能)
placeholder:
参数 说明
use 搜索方式名称。不需要则留空
placeholder 搜索框内默认提示文字

后文将详细介绍推荐的本地搜索方案配置步骤。

本地搜索配置

  1. 运行 :
1
hexo clean
  1. 你需要安装 hexo-generator-searchdb 或者 hexo-generator-search,并根据其文档进行相应配置。
1
npm install hexo-generator-search --save
  1. 把主题配置文件_config.butterflysearchuse 配置为 local_search

本地搜索其它配置:

1
2
3
4
5
6
# Local Search
local_search: # Preload the search data when the page loads.
preload: false # Show top n results per article, show all results by setting to -1
top_n_per_article: 1
unescape: false # Unescape html strings to the readable one.
# CDN: # 搜索文件的CDN 地址(默认使用的本地链接)
参数 解释
preload 预加载,开启后,进入网页后会自动加载搜索文件。关闭时,只有点击搜索按钮后,才会加载搜索文件
top_n_per_article 匹配的文章结果,默认显示最开始的 1 段结果
unescape 将 html 字符串解码为可读字符串
CDN 搜索文件的 CDN 地址(默认使用本地链接)

参考文章: