Search tools
靜態網站搭配動態搜尋功能?沒錯,Hugo 提供了一種替代 Google 或其他搜尋引擎嵌入式腳本的方案,專為靜態網站設計。Hugo 允許您通過直接索引內容檔案,為您的訪問者提供自訂搜尋功能。
開源
- Pagefind
- 一個完全靜態的搜尋庫,旨在大規模網站上表現良好,同時盡可能減少用戶帶寬的使用。
- GitHub Gist for Hugo Workflow
- 這個 gist 包含一個簡單的工作流程,用來為靜態網站建立搜尋索引。它使用一個簡單的 Grunt 腳本來索引所有內容檔案,並利用 lunr.js 來提供搜尋結果。
- hugo-lunr
- 使用 lunr.js 為您的靜態 Hugo 網站添加搜尋功能的一個簡單方法。Hugo-lunr 會創建一個索引檔,包含您 Hugo 項目中的任何 HTML 和 Markdown 文件。
- hugo-lunr-zh
- 類似於 Hugo-lunr,但 Hugo-lunr-zh 可以幫助您分離中文關鍵字。
- GitHub Gist for Fuse.js integration
- 這個 gist 示範了如何利用 Hugo 的現有建置時間處理來生成 JSON 格式的可搜尋索引,並由 Fuse.js 在客戶端使用。雖然這個 gist 使用 Fuse.js 進行模糊匹配,但任何能夠讀取 JSON 索引的客戶端搜尋工具都可以使用。這不需要 npm、grunt 或其他建置工具,僅需要 Hugo!
- hugo-search-index
- 一個包含 Gulp 任務和預建瀏覽器腳本的庫,實現搜尋功能。Gulp 生成來自 Markdown 文件的搜尋索引。
- hugofastsearch
- 對 “GitHub Gist for Fuse.js integration” 的可用性和速度更新——全球、鍵盤優化搜尋。
- JS & Fuse.js tutorial
- 一個簡單的客戶端搜尋解決方案,使用 FuseJS(不需要 jQuery)。
- Hugo Lyra
- Hugo-Lyra 是一個 JavaScript 模組,用來將 Lyra 集成到 Hugo 網站中。它包含生成索引的伺服器端部分和可選的客戶端庫,輕鬆啟動搜尋引擎。
- INFINI Pizza for WebAssembly
- Pizza 是一個超輕量級但功能全面的搜尋引擎,用 Rust 編寫。只需三行代碼,您就能為 Hugo 網站快速添加離線搜尋功能。請參閱 這篇博客教程 了解如何將其與 Hugo 集成。