# General Translation React SDKs (gt-react, gt-next, gt-react-native): Gestione SEO degli alias delle impostazioni regionali URL: https://generaltranslation.com/it/docs/react/nextjs/locale-alias-seo.mdx --- title: Gestione SEO degli alias delle impostazioni regionali description: Come usare alias personalizzati delle impostazioni regionali negli URL di Next.js pubblicando al contempo metadati linguistici canonici per i motori di ricerca. related: links: - /docs/react/nextjs/app-router-middleware - /docs/react/nextjs/app-router-static-site-generation - /docs/react/nextjs/registering-request-locales - /docs/react/nextjs/cache-components --- Un alias dell'impostazione regionale consente a una route di usare un segmento personalizzato come `/cn`, mentre le traduzioni usano il codice BCP 47 canonico `zh`. `gt-next` risolve la mappatura per le traduzioni e il routing, ma la tua app resta responsabile di ``, degli URL canonici, delle alternative linguistiche e delle voci della sitemap. ## Configurare un alias [#configure] Mappa l'impostazione regionale nell'URL al relativo codice canonico con [`customMapping`](/docs/react/reference/config#custom-mapping): ```json title="gt.config.json" { "defaultLocale": "en-US", "locales": ["en-US", "cn", "ja"], "customMapping": { "cn": { "code": "zh", "name": "Mandarin" } } } ``` Il middleware accetta `/cn` come route localizzata. General Translation risolve `cn` in `zh` quando deve determinare l'impostazione regionale canonica. Tieni separati questi due valori nel codice SEO: * Usa l'**alias** negli URL delle route, ad esempio `/cn/about`. * Usa il **codice BCP 47 canonico** negli attributi `lang` e `hreflang`, ad esempio `zh`. ## Imposta la lingua del documento [#document-language] Risolvi l'impostazione regionale della route prima di impostare l'attributo ``: ```tsx title="app/[locale]/layout.tsx" import { resolveCanonicalLocale } from 'gt-next/server'; export default async function LocaleLayout({ children, params, }: { children: React.ReactNode; params: Promise<{ locale: string }>; }) { const { locale } = await params; const canonicalLocale = resolveCanonicalLocale(locale); return (
{children} ); } ``` Senza questa conversione, la route `/cn` renderizzerebbe `lang="cn"`, che non è un tag di lingua cinese valido. ## Pubblicare le versioni alternative della pagina [#page-alternates] Next.js genera link `hreflang` a partire da `metadata.alternates.languages`. Usa codici canonici come chiavi dell'oggetto e route basate su alias come valori: Questo esempio per la homepage va inserito nella pagina localizzata. Genera URL specifici per ogni route nei metadati di ciascuna pagina annidata. ```tsx title="app/[locale]/page.tsx" import type { Metadata } from 'next'; import { resolveCanonicalLocale } from 'gt-next/server'; const locales = ['en-US', 'cn', 'ja']; const baseUrl = 'https://example.com'; export async function generateMetadata({ params, }: { params: Promise<{ locale: string }>; }): Promise