简介
一个在Algolia上为Hexo博客的帖子编制索引的插件 ,增加搜索功能。
安装
1
| npm install hexo-algoliasearch --save
|
Hexo自动检测到所有插件 , 如果不是这种情况,请在您的_config.yml
文件中注册插件:
1 2
| plugins: - hexo-algoliasearch
|
配置
在_config.yml
文件中配置此插件:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| algolia: appId: "Application ID 对应的值" apiKey: "新建的 api key 对应的值" adminApiKey: "***" chunkSize: 5000 indexName: "my-blog" fields: - content:strip:truncate,0,500 - excerpt:strip - gallery - permalink - photos - slug - tags - title - about - categories - link - movies - music - _posts - messageboard
|
键 |
类型 |
默认 |
描述 |
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 2
| fields: - content:strip:truncate,0,200
|
选件
生成索引文件