Non riuscite a trovare le stringhe che state cercando di tradurre nella pagina String Translation? Qui esamineremo alcuni motivi comuni e dove potete trovarli.
In questo articolo:
Perché non riesco a trovare le mie stringhe?
Soluzioni
I file di traduzione dei temi o dei plug-in sono cambiati
I file di traduzione dei temi o dei plug-in sono cambiati
Solitamente i temi e i plug-in vengono offerti con le proprie traduzioni dei testi che potete trovare nella loro interfaccia utente, così come il loro output front-end. Memorizzano queste traduzioni all’interno di file di traduzione.
Per impostazione predefinita WPML non scansiona o carica questi file di traduzione nel database. Per questo motivo non riuscirete trovare queste stringhe nella pagina String Translation.
Se volete tradurre o modificare queste stringhe, dovete prima scansionare i file di traduzione del tema correlato o di un plug-in.
Scansione del tema e dei plug-in
Andate su WPML → String Translation.
Provate a cercare la stringa e apparirù un menu a discesa chiamato Can’t find the strings you’re looking to translate? (Non riesci a trovare le stringhe che stai cercando di tradurre?) . Espandetelo. Alla voce Some of the translations have changed (Alcune traduzioni sono state modificate), scegliete il tema o i plug-in che vorreste far scansionare da WPML. Poi cliccate su Scan translation files (Scansiona file di traduzione).
Scansione dei file di traduzione delle stringhe
Al termine della scansione la pagina si aggiorna e ora potete selezionare il relativo tema o plug-in nel menu a discesa Select string within domain (Seleziona la stringa all’interno del dominio).
Scansione delle stringhe codificate
Alcuni temi o plug-in hanno stringhe codificate avvolte in una funzione gettext. String Translation scansiona soltanto i file MO alla ricerca di stringhe traducibili, in modo da non perdere le stringhe codificate.
Per scansionare le stringhe codificate:
Andate su WPML → Theme and Plugins Localization (Localizzazione del tema e dei plug-in).
Selezionate il tema o il plug-in e cliccate per scansionarlo.
Dopo aver effettuato la scansione, dovreste trovare le stringhe sulla paginaString Translation.
Scansione delle stringhe codificate
Le stringhe non vengono selezionate per la traduzione
Molti temi e plug-in memorizzano i testi nella tabella wp_options. Queste stringhe devono prima essere registrate come traducibili e aggiunte a String Translation.
Per registrare queste stringhe:
Andate su WPML → String Translation.
Provate a cercare la stringa e apparirà un menu a discesa chiamato Can’t find the strings you’re looking to translate? (Non riesci a trovare le stringhe che stai cercando di tradurre?). Espandete il menu a discesa e cliccate su Choose texts for translation (Scegli i testi da tradurre).
Scelta dei testi da tradurre
Se non visualizzate il menu a discesa, scorrete in fondo alla pagina e cliccate sul link Translate texts in admin screens (Traduci i testi nelle schermate di amministrazione).
Il link Translate texts in admin screens (Traduci i testi nelle schermate di amministrazione) in fondo alla pagina String Translation
Questa operazione vi porterà a un elenco ricercabile di stringhe di amministrazione. Selezionate la stringa e cliccate su Add to String Translation (Aggiungi a String Translation). Poi traducete la stringa normalmente sulla pagina String Translation.
Aggiungete le stringhe di amministrazione alla pagina String Translation
In alternativa potete cliccare su Export as a WPML configuration file (Esporta come un file di configurazione di WPML) per generare un frammento di codice da utilizzare nel vostro file di configurazione della lingua.
Esportazione come file di configurazione di WPML
Altri strumenti avanzati di String Translation
Se ancora non riuscite a trovare le stringhe, WPML ha degli strumenti che possono aiutarvi a localizzarle. Potete accedervi da WPML → String Translation.
Tracciate dove le stringhe appaiono sul sito
Questa opzione vi aiuta a identificare dove vengono utilizzate le stringhe nelle pagine pubbliche del sito. Quando è attiva, WPML terrà un registro della fonte PHP e delle pagine che visualizzano ogni stringa. Questa funzione può aiutare a capire il contesto corretto delle stringhe e come dovrebbero essere tradotte.
Istruzioni per l’uso:
Attivate l’opzione Track where strings appear on the site (Traccia dove le stringhe appaiono sul sito).
Visitate le pagine del front-end del sito.
Passate a una lingua diversa da quella predefinita del sito.
WPML registrerà qualsiasi stringa che appare sulla pagina che state visualizzando. Spostatevi da una pagina all’altra per coprire tutte le stringhe che vi servono.
Attivazione/disattivazione dell’utilizzo delle stringhe
Icone di informazioni sull’elenco di stringhe
Tracciare quando le stringhe appaiono sul sito
Stringa sulla pagina pubblica
Attivazione/disattivazione dell’utilizzo delle stringhe
Icone delle informazioni sull’elenco delle stringhe
Stringa nel codice PHP
Stringa sulla pagina pubblica
Nota: questa è un’operazione intensa per il database. La dovete attivare soltanto quando create il sito. Quando avete finito di registrare le stringhe, non dimenticate di tornare alla pagina di amministrazione di String Translation e di disattivare Track where strings appear on the site (Traccia dove le stringhe appaiono sul sito). Se mantenete questa opzione in modalità produzione, la velocità del vostro sito sarà notevolmente inferiore.
Registrazione automatica delle stringhe da tradurre
WPML utilizza l’analisi del codice statico per individuare le stringhe che richiedono la traduzione nel tema e nei plug-in. In alcuni casi, la scansione del codice statico non riesce a trovare tutte le stringhe in modo affidabile. Si verifica spesso quando le stringhe vengono generate dinamicamente utilizzando il codice.
Attivando la registrazione automatica, WPML registrerà le stringhe di tutti i domini di testo che necessitano della traduzione al momento della visualizzazione. L’opzione conservativa è di registrare le stringhe quando avete effettuato l’accesso come amministratore. In altri termini, quando un amministratore che ha effettuato l’accesso naviga sul sito, WPML registra per la traduzione qualsiasi stringa visualizzata.
Attivazione dell’opzione per registrare automaticamente le stringhe da tradurre
Questa operazione può aumentare un numero di query del database mentre le stringhe si registrano per la traduzione.
Sincronizzazione dei file di traduzione per i siti in esecuzione su più server
Per impostazione predefinita String Translation memorizza solo i file MO su un server. In altri termini, se il vostro sito funziona su più server, tutte le richieste gestite da altri server non traducono le stringhe.
A partire da WPML 4.4.0 potete attivare una modalità personalizzata per sincronizzare i file MO sui vostri server. Per farlo, aggiungete quanto segue al vostro file wp-config:
define( 'WPML_ST_SYNC_TRANSLATION_FILES', true );
Nota: questa modalità di sincronizzazione aggiungerà un altro livello di logica che potrebbe influire sulle prestazioni del vostro sito. Consigliamo di utilizzarla solo se necessario.