Hexo-Algoliasearch
简介
一个在Algolia上为Hexo博客的帖子编制索引的插件 ,增加搜索功能。
你需要安裝 hexo-algolia 或 hexo-algoliasearch. 根据它们的说明文档去做相应的配置。
安装
这里我们使用 hexo-algoliasearch
插件
1 | npm install hexo-algoliasearch --save |
Hexo自动检测到所有插件 , 如果不是这种情况,请在您的_config.yml
文件中注册插件:
1 | plugins: |
配置
在_config.yml
文件中配置此插件:
1 | algolia: |
键 | 类型 | 默认 | 描述 |
---|---|---|---|
appId | String | 您的应用程序ID。可选,如果ALGOLIA_APP_ID 设置了环境变量 |
|
apiKey | String | 您的API密钥(只读)。用于搜索索引。可选,如果ALGOLIA_API_KEY 设置了环境变量 |
|
adminApiKey | String | 您的adminAPI密钥。它用于创建,删除,更新索引。可选,如果ALGOLIA_ADMIN_API_KEY 设置了环境变量 |
|
chunkSize | Number | 5000 | 记录/帖子被分成几块上传。建议使用Algolia以5000 获得最佳性能。请注意,如果您要为帖子内容编制索引,则由于篇幅限制,它可能会失败。为了克服这个问题,请减小块的大小,直到通过为止。 |
indexName | String | 存储帖子的索引名称。可选,如果ALGOLIA_INDEX_NAME 设置了环境变量 |
|
fields | List | 要索引的字段名称列表。用分隔字段名称和过滤器: 。阅读过滤器以获取更多信息 |
筛选器
过滤器使您能够在建立索引之前处理字段的值。过滤器之间用冒号(:
)隔开,并且可能具有以逗号(,
)分隔的可选参数。可以链接多个过滤器。一个滤波器的输出将应用于下一个。
过滤器列表:
过滤 | 签名 | 句法 | 描述 |
---|---|---|---|
跳闸 | strip() |
strip |
删除HTML。对于摘录和内容值不索引HTML标签和属性可能很有用。 |
截短 | truncate(start: number, end: number) |
truncate,0,300 |
从start 索引到end 索引截断字符串。阿尔戈利亚(Algolia)在记录大小方面有一些限制,因此减少帖子内容可能很有用。 |
例
1 | fields: |
选件
选件 | 描述 |
---|---|
-n,-不清除 | 不清除现有索引 |
生成索引文件
1 | hexo algolia |
本地搜索
安装
你需要安裝 hexo-generator-search. 根據它的文檔去做相應配置。注意格式只支持 xml。
1 | npm install hexo-generator-search --save |
配置
修改站点配置文件 _config.yml
1 | search: |
修改配置文件 butterfly.yml
1 | local_search: |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 WF's Blog!
评论