Recherche
Par défaut, les sites utilisant Starlight incluent une recherche plein texte utilisant Pagefind, un outil de recherche rapide et à faible bande passante pour sites statiques.
Aucune configuration n’est requise pour activer la recherche. Créez et déployez votre site, puis utilisez la barre de recherche dans l’en-tête du site pour trouver du contenu.
Cacher du contenu dans les résultats de recherche
Exclure une page
Pour exclure une page de votre index de recherche, ajoutez pagefind: false
au frontmatter de la page :
Exclure une partie d’une page
Pagefind ignorera le contenu à l’intérieur d’un élément avec l’attribut data-pagefind-ignore
.
Dans l’exemple suivant, le premier paragraphe s’affichera dans les résultats de recherche, mais le contenu de la <div>
ne s’affichera pas :
Système de recherche alternatif
Algolia DocSearch
Si vous avez accès au programme DocSearch d’Algolia et que vous souhaitez l’utiliser à la place de Pagefind, vous pouvez utiliser le module d’extension officiel DocSearch de Starlight.
-
Installez
@astrojs/starlight-docsearch
: -
Ajouter DocSearch à votre configuration
plugins
de Starlight dans le fichierastro.config.mjs
et spécifiez votreappId
,apiKey
etindexName
d’Algolia :
Avec cette configuration mise à jour, la barre de recherche de votre site ouvrira désormais une modale Algolia au lieu de celle par défaut.
Configuration de DocSearch
Le module d’extension DocSearch de Starlight supporte également la personnalisation du composant DocSearch avec les options supplémentaires suivantes :
maxRecentSearches
: Limite le nombre de résultats affichés pour chaque groupe de recherche. La valeur par défaut est5
.disableUserPersonalization
: Empêche DocSearch de sauvegarder les recherches récentes et favorites d’un utilisateur localement. La valeur par défaut estfalse
.insights
: Active le plugin Algolia Insights et envoie les événements liés à toute recherche à votre index DocSearch. La valeur par défaut estfalse
.searchParameters
: Un objet personnalisant les paramètres de recherche Algolia.
Traduire l’interface utilisateur de DocSearch
DocSearch fournit seulement des chaînes de l’interface utilisateur en anglais par défaut. Ajoutez des traductions de l’interface utilisateur de la modale pour votre langue en utilisant le système d’internationalisation intégré à Starlight.
-
Étendez la définition de la collection de contenus
i18n
de Starlight avec le schéma DocSearch danssrc/content/config.ts
: -
Ajoutez des traductions à vos fichiers JSON dans
src/content/i18n/
.Voici les valeurs par défaut en anglais utilisées par DocSearch :