Astro Narrow usa l’italiano come lingua predefinita e include l’inglese come seconda lingua di esempio. La struttura degli URL è intenzionalmente asimmetrica: le pagine italiane non hanno il prefisso /it/, mentre le pagine inglesi vivono sotto /en/.
Rispecchia i contenuti per cartella di lingua#
Posiziona le voci tradotte in cartelle di collection corrispondenti:
src/content/posts/it/deploy-github-pages.mdsrc/content/posts/en/deploy-github-pages.mdNomi di file corrispondenti rendono facile capire la relazione, ma ogni file resta una voce di contenuto completa, con proprio titolo, description, date, corpo, categorie e tag. Una traduzione può essere aggiunta più tardi senza bloccare l’articolo originale.
Localizza la taxonomy visualizzata#
I termini dell’Archivio sono valori di visualizzazione locali, non ID cross-lingua:
# Italianocategories: ["Guide"]tags: ["Routing", "Astro"]
# Inglesecategories: ["Guides"]tags: ["Routing", "Astro"]Questo mantiene semplice la scrittura e fa sì che i filtri si leggano in modo naturale. Significa anche che il tema non deduce automaticamente che Guide e Guides siano la stessa entità; mantieni la coerenza dei nomi all’interno di ogni lingua.
Genera i percorsi interni tramite gli helper#
Usa getLocalePath(locale, path) per i link di sistema e di contenuto. Gestisce sia la regola della lingua predefinita sia ASTRO_BASE:
getLocalePath('it', '/archives/')getLocalePath('en', '/archives/')// /en/archives/Su un deployment Pages di progetto, entrambi i risultati ricevono anche la base del repository configurata. Il cambio lingua usa switchLocalePath() così i componenti non devono dividere da soli i segmenti di lingua e base.
Verifica entrambe le forme di rotta#
Dopo aver aggiunto una lingua o cambiato la navigazione, fai una build con ASTRO_BASE=/astro-narrow/. Conferma che i percorsi italiani non acquisiscano /it/, che i percorsi inglesi mantengano /en/, e che asset, link dell’Archivio, risultati di ricerca, RSS e sitemap restino tutti dentro la base del progetto.