La búsqueda del cliente será cada vez más lenta a medida que crezca el contenido; es razonable tener un servicio de búsqueda remota para manejar las solicitudes de búsqueda de un sitio grande.
Algolia es un servicio de búsqueda popular que ofrece un plan gratuito (10.000 registros, 10.000 solicitudes por mes). Después de leer este artículo, aprenderá cómo configurar Algolia y cargar archivos de índice automáticamente.
Preparativos
En primer lugar, debe crear una cuenta de Algolia y luego crear su aplicación.
Navegue hasta Descripción general > Claves API, la página muestra todo lo que pueda necesitar en los pasos restantes, como el ID de la aplicación, la clave API de búsqueda y la clave API de administrador.
Configuración
| Nombre | Tipo | Predeterminado | Descripción |
|---|---|---|---|
algolia | Objeto | - | Algolia |
algolia.appId | Cadena | - | ID de aplicación |
algolia.apiKey | Cadena | - | Buscar solo clave API |
algolia.indexName | Cadena | - | Nombre del índice |
algolia.paginate | Número | 5 | |
algolia.stallThreshold | Número | 300 | Cuántos milisegundos deben transcurrir antes de que la experiencia de autocompletar se considere detenida. |
Índice
Crear índice
Navegue hasta Fuentes de datos > Índices > Crear índice y luego cree su índice, llamémoslo prod.
Agregar atributos de búsqueda
Una vez creado el índice, estamos en la página de índice.
Navegue hasta Configuración > Atributos buscables, necesitaremos agregar los atributos title y content.
Subir índice
Una vez creado el sitio, el archivo de índice de Algolia se generará y guardará como /algolia/index.json, es decir, http://localhost:1313/algolia/index.json.
Cargar manualmente
Puede cargar el archivo de índice manualmente a través del panel de Algolia para realizar pruebas.
Herramienta CLI
Escribí un herramienta CLI para cargar el archivo de índice, se puede integrar fácilmente con sus herramientas de CI y CD.
Acción de GitHub
También escribí un Acciones de GitHub si estás usando GitHub para alojar tu repositorio.
Cree .github/workflows/algolia.yml en la raíz de su sitio con el siguiente contenido.
1name: Algolia Index
2
3on:
4 workflow_dispatch:
5 push:
6 branches:
7 - "main"
8
9jobs:
10 index:
11 runs-on: ubuntu-latest
12 steps:
13 - name: Checkout
14 uses: actions/checkout@v3
15 - name: Build & upload Algolia index
16 uses: razonyang/hugo-theme-bootstrap-algolia-action@v0.1.0
17 with:
18 algolia-app-id: ${{ secrets.ALGOLIA_APP_ID }}
19 algolia-api-key: ${{ secrets.ALGOLIA_API_KEY }}
20 algolia-index-name: prod
Y luego cree los secretos ALGOLIA_APP_ID y ALGOLIA_API_KEY para su repositorio.
ALGOLIA_API_KEYes la clave API admin, no clave API de búsqueda únicamente.
Una vez creada la acción de GitHub, el archivo de índice se cargará automáticamente en git push.

Comentarios