Zum Inhalt springen

Astro i18n Next

Übersetzte URL-Routen, Inhaltslokalisierung, mehrsprachiges Markdown und i18next-Integration — alles über einen einzigen createI18n()-Aufruf.

Funktionen

Übersetzte URL-Routen

Automatische sprachpräfixierte Pfade für alle Ihre Seiten. /about/ wird zu /es/sobre/ — ohne dynamische Slugs oder Catch-All-Routen.

Virtuelles Modul

Importieren Sie t, localePath, switchLocalePath und mehr aus virtual:i18n. Ein Import, alle i18n-Helfer die Sie brauchen.

Mehrsprachiges Markdown

Schreiben Sie alle Sprachen in einer einzigen Markdown-Datei mit YAML-Frontmatter und <!-- locale:es -->-Markierungen im Text. Angetrieben durch die Content Loader API von Astro 5.

i18next-Integration

Vollständige i18next-Unterstützung mit Punkt-Notation-Schlüsseln, Fallback-Ketten und Plugin-Erweiterbarkeit (ICU, Interpolation und mehr).

Seiten-Slug-Übersetzung

Exportieren Sie slugs aus .astro-Seiten, um sprachspezifische URL-Segmente zu definieren. Automatisch beim Build erkannt — keine Konfiguration nötig.

Vollständig Statisch

Entwickelt für die statische Ausgabe von Astro. Alle Routen werden ohne Laufzeit-Overhead vorgerendert.

Schnelles Beispiel

astro.config.mjs
import { createI18n } from '@otrodigital/astro-i18n-next';
export default defineConfig({
integrations: [createI18n({
defaultLocale: 'en',
locales: ['en', 'es'],
localeLabels: { en: 'English', es: 'Español' },
localeHtmlLang: { en: 'en', es: 'es' },
translations: { en, es },
pagesDir: 'src/pages',
})],
});
---
// Beliebige .astro-Komponente
import { t, localePath } from 'virtual:i18n';
const locale = Astro.locals.locale;
---
<h1>{t(locale, 'home.title')}</h1>
<a href={localePath(locale, '/about/')}>{t(locale, 'nav.about')}</a>