# General Translation Integrations: Tradurre i contenuti URL: https://generaltranslation.com/it/docs/integrations/sanity/guides/translating-content.mdx --- title: Tradurre i contenuti description: Come tradurre i documenti di Sanity dall'azione del documento, dalla vista a schede o dalla pagina Traduzioni. related: links: - /docs/integrations/sanity/guides/managing-translations - /docs/integrations/sanity/guides/querying-translations - /docs/integrations/sanity/guides/configuring-sanity --- Genera traduzioni a livello di documento o a livello di campo con il plugin General Translation. Le traduzioni a livello di documento creano un documento per ogni impostazione regionale. Le traduzioni a livello di campo aggiungono valori localizzati agli array internazionalizzati nel documento sorgente. ## Traduci un documento [#translate-one] L'azione **Traduci** è disponibile per ogni documento, ma gli strumenti di traduzione compaiono solo nei documenti in lingua sorgente. In un documento tradotto, la finestra di dialogo mostra invece un messaggio. 1. Apri un documento in lingua sorgente in Sanity Studio. 2. Fai clic su **Traduci** nella barra delle azioni del documento. 3. In **Traduci**, seleziona le impostazioni regionali di destinazione. 4. Fai clic su **Traduci**. Una volta generate, le traduzioni vengono monitorate nella finestra di dialogo sotto **Stato della traduzione**. Per la localizzazione a livello di documento, il plugin importa ogni documento per impostazione regionale, ne aggiorna i riferimenti e lo pubblica, perché l'importazione automatica, l'aggiornamento automatico e la pubblicazione automatica sono abilitati per impostazione predefinita. Puoi attivare o disattivare singolarmente questi comportamenti, importare manualmente un'impostazione regionale dalla relativa riga di stato oppure usare **Importa tutto**, **Correggi i riferimenti** e **Pubblica traduzioni**. Per la localizzazione a livello di campo, l'importazione unisce i valori tradotti nei campi `internationalizedArray*` dello stesso documento. Rivedi e pubblica quel documento in Sanity. La correzione dei riferimenti e i controlli per la pubblicazione delle traduzioni si applicano solo alle traduzioni a livello di documento. ## Usa la scheda Traduzioni [#translations-tab] Se il tuo Studio include `TranslationsTab`, apri la scheda **General Translation** di un documento. Offre lo stesso flusso di lavoro dell'azione **Traduci**, ma lo mantiene visibile all'interno dell'editor del documento. Consulta [Configurare Sanity](/docs/integrations/sanity/guides/configuring-sanity#translations-tab) per aggiungere la scheda. ## Tradurre più documenti [#translate-many] Usa lo strumento **Traduzioni** a livello di sito per lavorare contemporaneamente su tutti i documenti traducibili. Da qui puoi: * Generare le traduzioni per tutti i documenti (**Traduci tutto**). * Importare tutte le traduzioni pronte (**Importa tutto**). * Importare solo le traduzioni non ancora importate (**Importa mancanti**). * Correggere i riferimenti tra i documenti tradotti (**Correggi i riferimenti**). * Pubblicare i documenti tradotti la cui sorgente è pubblicata (**Pubblica traduzioni**). * Inviare a General Translation le traduzioni già presenti in Sanity (**Salva modifiche locali**). Vedi [Gestione delle traduzioni](/docs/integrations/sanity/guides/managing-translations). ## Mantieni le modifiche alle traduzioni [#preserve-edits] Gli Editor spesso rivedono i contenuti tradotti dopo averli ricevuti da General Translation. Per impostazione predefinita, un'esecuzione di traduzione successiva rigenera tali contenuti e le modifiche vanno perse. Attiva **Salva modifiche locali** per conservarle. Con l'interruttore attivo, ogni esecuzione di traduzione invia prima a General Translation le traduzioni attualmente presenti in Sanity per i documenti che dispongono già di una versione sorgente in General Translation. I contenuti il cui testo sorgente non è cambiato vengono quindi riutilizzati da Sanity anziché tradotti nuovamente. L'interruttore si trova nello strumento **Traduzioni** e, nella scheda del documento, è denominato **Salva modifiche locali prima di tradurre**. Per impostazione predefinita è disattivato. Quando lo attivi, viene prima richiesta una conferma; quando lo disattivi, la modifica ha effetto immediato. L'interruttore si applica alle esecuzioni di traduzione avviate dalla sessione Studio corrente e viene reimpostato quando Studio viene ricaricato. Imposta lo stato iniziale con [`preserveExistingTranslations`](/docs/integrations/sanity/reference/plugin-configuration#preserve-existing-translations). Sono supportate entrambe le strategie di localizzazione. Le traduzioni a livello di documento vengono lette tramite `translation.metadata`, privilegiando le bozze rispetto ai documenti pubblicati, in modo che vengano incluse anche le modifiche non pubblicate. Le traduzioni a livello di campo vengono lette dagli array internazionalizzati del documento sorgente. Le impostazioni regionali senza contenuti esistenti vengono ignorate. Attivando questa opzione, Sanity diventa la fonte di riferimento. I contenuti in Sanity sostituiscono qualsiasi contenuto conservato da General Translation per quella versione del documento, inclusa una traduzione completata ma non ancora importata. Importa prima eventuali traduzioni in attesa. Se il plugin non riesce a inviare le traduzioni esistenti, l'esecuzione di traduzione procede comunque e Studio avvisa che le modifiche potrebbero essere sovrascritte. ## Salva le modifiche locali senza tradurre [#save-local-edits] Usa l'azione **Salva modifiche locali** per inviare a General Translation le traduzioni già presenti in Sanity senza avviare un'esecuzione di traduzione. Il plugin carica i file sorgente necessari, quindi salva i contenuti esistenti per ciascuna impostazione regionale come traduzione di quella versione. Usa questa azione prima dell'interruttore quando un documento non dispone ancora di una versione sorgente di General Translation. Questa azione è utile quando adotti il plugin in un progetto tradotto altrove, così General Translation parte dai contenuti già disponibili. L'azione è disponibile nello strumento **Traduzioni** e nella scheda del documento. Viene eseguita su richiesta e non dipende dall'interruttore **Salva modifiche locali**. ## Rigenera le traduzioni [#retranslate] Per scartare le traduzioni esistenti e rigenerarle, apri **Traduci tutto** e seleziona **Ritraduci da zero**. Il pulsante di conferma diventa **Ritraduci tutto**. Questa operazione scarta le modifiche apportate ai documenti tradotti nello Studio e salta il passaggio **Salva modifiche locali** per quell'esecuzione. Lascia deselezionata la casella di controllo per riutilizzare le traduzioni esistenti. Questa opzione è disponibile solo nella finestra di dialogo **Traduci tutto**. Il workflow **Traduci** per singolo documento riutilizza sempre le traduzioni esistenti e rispetta l'interruttore **Salva modifiche locali**. ## Cosa viene tradotto [#what-translated] Il plugin serializza i documenti in HTML, invia l'HTML per la traduzione e poi reintegra l'HTML tradotto nei documenti dell'impostazione regionale o nei campi array internazionalizzati, a seconda di `translationLevel`. Elabora ricorsivamente: * Campi stringa e di testo. * Blocchi Portable Text. * Oggetti annidati. * Array. Alcuni tipi di campo vengono preservati e, per impostazione predefinita, non vengono inviati per la traduzione, tra cui riferimenti, date, file, immagini, numeri, booleani, URL, colori, codice e geopunti. Vedi l'elenco completo degli [stop types predefiniti](/docs/integrations/sanity/reference/plugin-configuration#stop-types). I campi slug *non* vengono esclusi per impostazione predefinita, quindi il valore `current` di uno slug viene inviato per la traduzione. Usa `dedupeFields` o `skipFields` per controllare il comportamento dello slug. ## Gestire i riferimenti [#references] Le traduzioni a livello di documento possono fare riferimento ad altri documenti. Il plugin cerca la traduzione di ogni documento a cui si fa riferimento e aggiorna il riferimento in modo che punti alla versione corretta per l'impostazione regionale, quando disponibile. Questa operazione viene eseguita automaticamente dopo l'importazione nella finestra di dialogo del documento e, su richiesta, con **Correggi i riferimenti** nella pagina Traduzioni. Vedi [Gestire le traduzioni](/docs/integrations/sanity/guides/managing-translations#patch-references). ## Gestire gli slug e i campi copiati [#slugs-fields] Alcuni campi non dovrebbero essere tradotti direttamente. Usa i field matcher per gestirli: * `dedupeFields` — copia il valore sorgente e aggiungi l'impostazione regionale per renderlo univoco per ogni documento, ad esempio da `about` a `about-es`. È comunemente usato per gli slug. * `ignoreFields` — copia il valore sorgente senza modificarlo in ogni documento tradotto. * `skipFields` — rimuovi completamente il campo dai documenti tradotti. Vedi [Gestire le traduzioni](/docs/integrations/sanity/guides/managing-translations#field-behavior). ## Next steps - /docs/integrations/sanity/guides/managing-translations - /docs/integrations/sanity/guides/querying-translations - /docs/integrations/sanity/guides/configuring-sanity