De lokale zoekopdracht wordt langzamer naarmate de inhoud groeit. Het is dan redelijk om een externe zoekservice te gebruiken voor grote sites.

Algolia is een populaire zoekservice met een gratis plan (10.000 records, 10.000 verzoeken per maand). Na het lezen van dit artikel weet je hoe je Algolia configureert en indexbestanden automatisch uploadt.

Voorbereiding

Maak eerst een Algolia-account aan en maak vervolgens je applicatie aan.

Navigeer naar Overzicht > API-sleutels; op deze pagina vind je alles wat je nodig hebt voor de volgende stappen, zoals de applicatie-ID, zoek-API-sleutel en de beheer-API-sleutel.

Configuratie

NaamTypeStandaardBeschrijving
algoliaObject-Algolia
algolia.appIdString-App-ID
algolia.apiKeyString-Alleen-zoeken API-sleutel
algolia.indexNameString-Indexnaam
algolia.paginateNumber5
algolia.stallThresholdNumber300Het aantal milliseconden dat moet verstrijken voordat de autocomplete-ervaring als vastgelopen wordt beschouwd.

Index

Index Aanmaken

Navigeer naar Gegevensbronnen > Indexen > Index aanmaken en maak je index aan. Geef hem de naam prod.

Doorzoekbare Attributen Toevoegen

Zodra de index is aangemaakt, bevinden we ons op de indexpagina.

Navigeer naar Configuratie > Doorzoekbare attributen en voeg de attributen title en content toe.

Index Uploaden

Na het bouwen van de site wordt het Algolia-indexbestand gegenereerd en opgeslagen als /algolia/index.json, bijv. http://localhost:1313/algolia/index.json.

Handmatig Uploaden

Je kunt het indexbestand handmatig uploaden via het Algolia-dashboard voor testdoeleinden.

CLI-tool

Er is een CLI-tool geschreven voor het uploaden van het indexbestand; deze kan eenvoudig worden geïntegreerd met je CI/CD-tools.

GitHub Action

Er is ook een GitHub Actions beschikbaar als je GitHub gebruikt voor je repository.

Maak .github/workflows/algolia.yml aan in de hoofdmap van je site met de volgende inhoud.

 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

Maak vervolgens de geheimen ALGOLIA_APP_ID en ALGOLIA_API_KEY aan voor je repository.

ALGOLIA_API_KEY is de beheer-API-sleutel, niet de alleen-zoeken API-sleutel.

Zodra de GitHub Action is aangemaakt, wordt het indexbestand automatisch geüpload bij elke git push.