Zola 可以根据章节和页面内容构建搜索索引,供elasticlunr等 JavaScript 库使用。
要启用它,您只需要build_search_index = true
在您的中进行设置,Zola将为所有未排除在搜索索引之外的页面config.toml
生成该集合的索引。default_language
如果您正在编写一个非英语站点,那么default_language
在您的网站中设置是非常重要的;config.toml
索引构建管道因语言而异。
zola build
在or之后zola serve
,您应该在 public 目录中看到两个文件:
search_index.${default_language}.js
: 所以search_index.en.js
对于默认设置elasticlunr.min.js
如果您index_format = "elasticlunr_json"
在您的 中进行设置config.toml
,search_index.${default_language}.json
则会生成一个而不是默认的search_index.${default_language}.js
.
由于每个站点都不同,Zola 不会对您的搜索功能做出任何假设,也不提供 JavaScript/CSS 代码来进行实际搜索和显示结果。你可以看看这个网站是如何实现它的,以获得一个想法:search.js。
如果您使用英语以外的语言,您还需要包含相应的 JavaScript 词干分析器文件。有关详细信息,请参阅https://github.com/weixsong/lunr-languages#in-a-web-browser。
在某些情况下,默认的索引策略并不适用。您可以自定义要包括的字段以及是否截断搜索配置中的内容。