Stai costruendo un sito WordPress nuovo e deve parlare più di una lingua. Il consiglio che ti danno di solito è tradurre tutto prima e lanciare in un colpo solo — ed è per questo che tanti siti WordPress multilingua non arrivano mai alla seconda lingua. C’è una strada più tranquilla: metti il sito online nella tua lingua, aggiungi le altre una alla volta, e tieni ciascuna invisibile finché non è finita. Nessuno vede una pagina tradotta a metà. Google non ne indicizza nessuna. E tu traduci coi tempi che la vita vera permette.

Perché un sito WordPress tradotto a metà costa più che non tradurlo affatto
Una pagina metà in italiano e metà in inglese non si legge come «lavori in corso». Si legge come abbandonata. I visitatori se ne vanno, e quelli che restano si fidano di meno — il 76% di chi compra preferisce farlo nella propria lingua, e in tre secondi capiscono se la tua c’è davvero.
Google è ancora meno indulgente. Pubblica una lingua prima di averla tradotta e inviti il motore di ricerca a indicizzare decine di pagine quasi identiche, ad annunciarle al mondo attraverso i tuoi tag hreflang e la tua sitemap, e poi a cambiarle tutte in silenzio più avanti. La guida di Google su questo è netta: evitare le pagine tradotte solo in parte. Agli utenti, dice, non piacciono.
Quindi l’obiettivo è semplice: costruisci le lingue alla luce del sole, pubblicale solo quando sono pronte.
Due interruttori diversi — e probabilmente ti serve il secondo
TranslateRocket ti dà due modi per tenere le traduzioni fuori dalla vista, e rispondono a due domande diverse.
- Modalità di anteprima nasconde tutte le traduzioni ai visitatori. Il sito resta nella lingua di partenza mentre rivedi tutte le lingue in una volta. Giusta per una prima passata su un sito che è già online.
- Una lingua tenuta offline nasconde una lingua sola, mentre le altre continuano a funzionare normalmente. Giusta per un sito nuovo, e giusta per ogni lingua che aggiungi dopo.
È il secondo a rendere possibile un lancio una lingua alla volta. L’italiano è online e vende mentre il tedesco è ancora da scrivere, e nessuno dei due sa dell’altro.
Passo 1 — Metti il sito online in una lingua sola
Finisci il sito nella lingua in cui scrivi. Testi veri, prezzi veri, foto vere. Conta più di quanto sembri: ogni frase che cambi dopo è una frase da ritradurre, in tutte le lingue. Un pomeriggio speso adesso a sistemare i testi ti risparmia una settimana di ritraduzioni.
Poi installa il plugin e imposta quella lingua come lingua di partenza. Per i visitatori non cambia ancora niente: un sito in una lingua sola con TranslateRocket installato resta un sito in una lingua sola.
Passo 2 — Aggiungi la seconda lingua, e lasciala offline
Vai su TranslateRocket → Lingue e spunta la lingua che vuoi. Dalla versione 1.1.0 una lingua che aggiungi nasce offline: il suo interruttore è grigio finché non decidi tu. Quel comportamento predefinito esiste esattamente per questo — nel momento in cui salvi, una lingua con dentro zero traduzioni sarebbe altrimenti già pubblica.
Finché l’interruttore è grigio, ecco esattamente che cosa vede il mondo.
| Chi | Che cosa vede |
|---|---|
| Un visitatore | Nessuna traccia della lingua nel selettore. Se per qualche motivo arriva su uno dei suoi indirizzi, viene portato alla lingua predefinita — niente pagina di errore, niente vicolo cieco. |
| Niente da trovare: la lingua resta fuori dai tag hreflang e fuori dalla sitemap XML, quindi non viene mai annunciata né scansionata come alternativa. | |
| Tu | Tutto. Sfogli la lingua sulle pagine vere, col tema vero, e correggi mentre vai — chi può usare l’anteprima continua a vedere tutto. |
Passo 3 — Traducila con i tuoi tempi
Adesso la parte lenta, che lenta non deve essere per forza. Sfoglia una volta il sito da loggato, così il plugin rileva i testi, poi scegli la strada che preferisci — si mescolano liberamente, e tutto quello che traduci resta:
- Nel browser, gratis, senza chiave API. Chrome ed Edge su un computer si portano dentro un traduttore che gira sul dispositivo stesso. Un pulsante traduce tutto il sito. L’abbiamo cronometrato: 464 stringhe in 42 secondi.
- Con l’AI, se hai una chiave DeepL, OpenAI, Gemini o Claude — prosa migliore, a pochi centesimi per pagina.
- A mano, sulla pagina stessa. Clicca qualsiasi testo nell’editor visuale e riscrivilo. È qui che una traduzione automatica diventa tua.
La pagina Lingue tiene il conto, così sai sempre quanto ti manca per poter girare l’interruttore.

Passo 4 — Controlla le cose a cui nessuno pensa
Prima di pubblicare una lingua, percorrila una volta come farebbe un visitatore. Quattro cose valgono due minuti ciascuna:
- Gli indirizzi delle pagine. Uno slug tradotto (/it/chi-siamo/ invece di /it/about-us/) è la differenza fra una pagina che si posiziona in italiano e una che non lo fa.
- Titoli e meta description. Sono quello che Google stampa davvero nei risultati — e non stanno sulla pagina, quindi è facile tradurre un sito intero e dimenticarsene del tutto.
- Il testo invisibile. Testo alternativo delle immagini, title dei link, placeholder dei moduli, etichette ARIA: i motori di ricerca e i lettori di schermo leggono tutto. Nel pannello SEO sono elencati uno per uno, e ogni riga ti porta all’elemento nella pagina.
- L’anteprima delle condivisioni. Il titolo e la descrizione che compaiono quando qualcuno pubblica la tua pagina su Facebook, LinkedIn o WhatsApp. Se un plugin SEO ne mette di suoi, vanno tradotti anche quelli.
Passo 5 — Porta l’interruttore sul verde
Un clic e la lingua è pubblica: compare nel selettore, entra nella sitemap, e i suoi tag hreflang cominciano a dire a Google che di ogni pagina esiste una versione italiana. Niente è stato annunciato prima che fosse vero — ed è esattamente il punto.
Poi passa alla lingua dopo. Il lavoro già fatto viene riusato: il plugin conserva ogni frase che ha tradotto, quindi una seconda lingua non ritraduce mai una frase che hai già approvato altrove.
La trappola che frega tutti, sei mesi dopo
Ecco il guasto che vediamo più spesso sui siti veri, e non ha niente a che fare col lancio.
Finisci la traduzione. Mesi dopo modifichi una pagina — un paragrafo nuovo su quella dei prezzi, una frase d’apertura cambiata. L’inglese è perfetto. E in tutte le altre lingue quel paragrafo nuovo resta in inglese in silenzio, perché TranslateRocket rileva i testi mentre un amministratore loggato guarda la pagina, e quella pagina nessuno l’ha più aperta.
È il tipo di guasto più silenzioso: nessun errore, nessun avviso, niente nell’elenco delle frasi da tradurre. Solo un paragrafo, nella lingua sbagliata, su una pagina che qualcuno legge ogni giorno.

Così adesso il plugin tiene un elenco delle pagine che hai modificato da quando le ha lette l’ultima volta e lo dice ad alta voce nell’amministrazione, coi nomi delle pagine e la scansione a un clic. Lanciala, traduci le poche frasi nuove, fine. Se da questo articolo porti a casa una sola abitudine, porta questa: dopo aver modificato una pagina, scansionala e ritraducila.
Le domande che si fanno prima di lanciare un sito WordPress multilingua
Google mi penalizza per una lingua non finita?
Non se nessuno può raggiungerla. Finché una lingua è offline non è nella sitemap, non è nei tag hreflang e non è collegata da nessuna parte, e i suoi indirizzi rimandano alla lingua predefinita. Non c’è niente da indicizzare, quindi non c’è niente per cui essere penalizzati.
Posso lavorare su due lingue insieme?
Sì — l’interruttore è per lingua. Puoi averne tre online, due offline e una che non hai ancora cominciato, tutte sullo stesso sito.
E se pubblico una lingua troppo presto per sbaglio?
Riporta l’interruttore sul grigio. Sparisce subito dal selettore, dalla sitemap e dai tag hreflang. Se Google l’aveva già scansionata, alla visita successiva lascia cadere quegli indirizzi.
Devo tradurre tutto prima di pubblicare una lingua?
No, ma decidilo con la testa. Una regola ragionevole: tutto quello a cui un visitatore arriva in due clic dalla home, più il pagamento se vendi. Quello che resta non tradotto ricade nella lingua di partenza invece di rompersi — ma ogni pezzo è una piccola crepa nell’impressione che stai facendo.
Funziona con Elementor, WooCommerce e i costruttori di pagine?
Sì. Il motore legge la pagina finita, quindi si traduce tutto quello che il browser mostra — costruttori di pagine, temi, interfacce dei plugin e WooCommerce compresi.
C’è qualcosa qui dentro che si paga?
No. TranslateRocket è gratis, tutto quanto, senza versione a pagamento e senza limiti di lingue o di stringhe.
Vuoi una mano col tuo sito? Posso farlo io per te
Sono Federico, lo sviluppatore di TranslateRocket — e costruire e tradurre siti WordPress è quello che faccio per vivere. È così che questo plugin resta gratis: non è mutilato per venderti un aggiornamento, è lo strumento che uso ogni giorno sui siti per cui vengo pagato.
Un sito multilingua nuovo da zero, un design da sistemare, un sito che c’è già portato da una lingua a dieci, sviluppo su misura, traduzioni riviste, o una migrazione via da un plugin che ti fa pagare ogni mese: dimmi cosa ti serve e ti dirò onestamente se sono la persona giusta. Trovi la persona che ha scritto il motore, non una coda di assistenza.
E se preferisci fare tutto da solo, quello che c’è in questo articolo è tuo da oggi — scrivimi lo stesso, se ti blocchi.
Fonti
- Google Search Central — «Gestire siti multiregionali e multilingua», sulle pagine tradotte a metà. sviluppatori.google.com
- Google Search Central — «Indicare a Google le versioni localizzate di una pagina» (hreflang). sviluppatori.google.com
- CSA Research — «Can’t Read, Won’t Buy», indagine su 8.709 consumatori in 29 paesi. csa-research.com
Da leggere anche: tradurre WordPress gratis con Chrome · rendere multilingua un sito WordPress, passo per passo · hreflang spiegato semplicemente · tutto quello che fa TranslateRocket
Lasci un plugin a pagamento? Leggi i confronti onesti: alternativa a WPML · alternativa a TranslatePress · alternativa a Weglot · alternativa a GTranslate
Serve una chiave API?
Guide passo passo per OpenAI, Claude, Gemini, DeepL e Google Translate: quanto costa ognuna, quali sono gratuite e come impostare un limite di spesa. Guide alle chiavi API →