搜索工具
一个具有动态搜索功能的静态网站?是的,Hugo 为静态网站提供了嵌入式脚本(来自 Google 或其他搜索引擎)的替代方案。 Hugo 允许您通过直接索引内容文件,为访问者提供自定义搜索功能。
开源
- Pagefind
- 一个完全静态的搜索库,旨在大型网站上表现良好,同时尽可能少地使用用户的带宽。
- Hugo 工作流的 GitHub Gist
- 此 Gist 包含一个简单的工作流,用于为静态网站创建搜索索引。 它使用一个简单的 Grunt 脚本来索引所有内容文件,并使用 lunr.js 来提供搜索结果。
- hugo-lunr
- 一种使用 lunr.js 将站点搜索添加到静态 Hugo 站点的简单方法。 Hugo-lunr 将在您的 Hugo 项目中创建任何 HTML 和 Markdown 文档的索引文件。
- hugo-lunr-zh
- 与 Hugo-lunr 有点类似,但 Hugo-lunr-zh 可以帮助您分隔中文关键字。
- Fuse.js 集成的 GitHub Gist
- 此 Gist 演示了如何利用 Hugo 现有的构建时处理来生成一个可搜索的 JSON 索引,供客户端的 Fuse.js 使用。 虽然此 Gist 使用 Fuse.js 进行模糊匹配,但任何能够读取 JSON 索引的客户端搜索工具都可以使用。 除了 Hugo 之外,不需要 npm、grunt 或其他构建时工具!
- hugo-search-index
- 一个包含 Gulp 任务和预构建的浏览器脚本的库,该脚本实现搜索。 Gulp 从项目 Markdown 文件生成搜索索引。
- hugofastsearch
- 对“Fuse.js 集成的 GitHub Gist”的可用性和速度更新——全局、键盘优化的搜索。
- JS & Fuse.js 教程
- 一个简单的客户端搜索解决方案,使用 FuseJS(不需要 jQuery)。
- Hugo Lyra
- Hugo-Lyra 是一个 JavaScript 模块,用于将 Lyra 集成到 Hugo 网站中。 它包含生成索引的服务器端部分和(可选)客户端库,以便轻松引导搜索引擎。
- 用于 WebAssembly 的 INFINI Pizza
- Pizza 是一个用 Rust 编写的超轻量级但功能齐全的搜索引擎。 您只需五分钟即可通过三行代码,快速为您的 Hugo 网站添加离线搜索功能。 有关将其与 Hugo 集成的分步指南,请查看此博客教程。