По умолчанию сайты Starlight включают полнотекстовый поиск на основе Pagefind, который является быстрым и не требующим большой пропускной способности инструментом поиска для статических сайтов.
Для включения поиска не требуется никакой настройки. Создайте и разверните свой сайт, а затем используйте строку поиска в шапке сайта для поиска контента.
Скрытие содержимого из результатов поиска
Исключение страницы
Чтобы исключить страницу из поискового индекса, добавьте pagefind: false в метаданных страницы:
Исключение части страницы
Pagefind будет игнорировать содержимое внутри элемента с атрибутом data-pagefind-ignore.
В следующем примере первый абзац будет отображаться в результатах поиска, а содержимое <div> — нет:
Альтернативные поставщики услуг поиска
Algolia DocSearch
Если у вас есть доступ к программе DocSearch от Algolia и вы хотите использовать её вместо Pagefind, вы можете воспользоваться официальным плагином Starlight DocSearch.
Добавьте DocSearch в конфигурацию Starlight plugins в astro.config.mjs и передайте ему ваши Algolia appId, apiKey и indexName:
С этой обновлённой конфигурацией строка поиска на вашем сайте теперь будет открывать модальное окно Algolia вместо стандартного модального окна поиска.
Конфигурация DocSearch
Плагин Starlight DocSearch также поддерживает настройку компонента DocSearch с помощью следующих дополнительных опций:
maxResultsPerGroup: Ограничивает количество результатов, отображаемых для каждой группы поиска. По умолчанию 5.
disableUserPersonalization: Предотвращает сохранение недавних поисков и избранных элементов пользователя в локальном хранилище. По умолчанию false.
insights: Включает плагин Algolia Insights и отправляет события поиска в ваш индекс DocSearch. По умолчанию false.
По умолчанию DocSearch предоставляет только английские строки пользовательского интерфейса.
Добавьте перевод модального пользовательского интерфейса для вашего языка, используя встроенную систему интернационализации Starlight.
Расширьте определение коллекции контента Starlight i18n схемой DocSearch в файле src/content/config.ts:
Добавьте переводы в JSON-файлы в src/content/i18n/.
Это английские значения по умолчанию, используемые DocSearch: