原由Swiftype如今收费了,也没有免费版本。Local Search搜索体验很差,微搜索Next官网上描述太少!因此选择Algolia。
注:Algolia搜索在版本 5.1.0 中引入,要使用此功能请确保所使用的 NexT 版本在此以后。css
Algolia 登录页面https://www.algolia.com/users/sign_in,可使用 GitHub 或者 Google 帐户直接登陆,也能够注册一个新帐户。我直接用谷歌帐户登录了,注册后的 14 天内拥有全部功能(包括收费类别的)。以后若未续费会自动降级为免费帐户,免费帐户 总共有 10,000 条记录,每个月有 100,000 的能够操做数。html
Index 建立完成后,此时这个 Index 里未包含任何数据。 接下来须要安装 Hexo Algolia 扩展, 这个扩展的功能是搜集站点的内容并经过 API 发送给 Algolia。前往站点根目录,执行命令安装:git
npm install hexo-algolia --save # 目前最新版本是1.2.4,下面的操做都是基于这个版本的文档
前往站点根目录打开_config.yml添加如下代码github
# Algolia Search API Key algolia: applicationID: '你的Application ID' apiKey: '你的Search-Only API Key' indexName: '输入刚才建立index name'
选中后保存。shell
export(windows 为 set) (Powershell 用 $env:) HEXO_ALGOLIA_INDEXING_KEY=你的Search-Only API key set (Mac和git bash 为 export) (Powershell 用 $env:) HEXO_ALGOLIA_INDEXING_KEY #查看是否设置成功若是没有值就设置失败 hexo algolia
更改Next主题配置文件,找到 Algolia Search 配置部分:npm
# Algolia Search algolia_search: enable: true hits: per_page: 10 labels: input_placeholder: Search for Posts hits_empty: "咱们没有找到任何搜索结果: ${query}" hits_stats: "找到约${hits}条结果(用时${time}ms)"
将 enable 改成 true 便可,根据须要你能够调整 labels 中的文本。这个是我修改的文本。windows
缘由:Algolia Search API Key indexName 错了api
解决方案:看下以前新建index的名字bash
缘由:没有修改Algolia搜索ACL(访问控制列表)hexo
解决方案: 按1.4操做勾选上就能够
缘由:遮罩的z-index值过高,个人next主题是5.1.3版本可能其余版本没有这个BUG
解决方案: 找到themesnextsourcecss_commoncomponentsthird-party 下面的algolia-search.styl 文件 第8行追加
+mobile() z-index: 1000
个人博客和github地址
http://theme-next.iissnan.com/third-party-services.html#algolia-search