Questa pagina esiste per il resto: temi e plugin meno popolari, versioni molto recenti in cui l’autore ha pubblicato prima che la compatibilità di WPML fosse aggiornata e un piccolo numero di aiuti generici per i siti che presentano sintomi specifici. La maggior parte dei clienti non visita mai questa sezione. Quando lo fai, di solito è perché il Supporto WPML ti ha indicato un’opzione specifica o un wpml-config.xml da incollare.
Due sottopagine di Impostazioni riguardano la compatibilità e questa pagina le copre entrambe:
- WPMLImpostazioniCompatibilità contiene le opzioni per i sintomi comuni.
- WPMLImpostazioniConfigurazione XML personalizzata è dove scrivi il tuo
wpml-config.xml, descritto nella seconda metà di questa pagina.
L’interfaccia utente per le impostazioni predefinite più comuni (preferenze di traduzione per tipo di post, per tassonomia, per campo) si trova in una pagina Impostazioni separata, trattata in Cosa viene tradotto e cosa no; la maggior parte dei clienti usa quell’interfaccia e viene qui solo quando non soddisfa le proprie esigenze.
Opzioni di compatibilità
Apri WPMLImpostazioniCompatibilità.
La pagina presenta quattro schede. Ogni scheda è mirata a una classe specifica di problemi di compatibilità.
Opzioni di localizzazione: per i temi e i plugin le cui traduzioni non si caricano
Quando un tema o un plugin include già le proprie traduzioni dell’interfaccia utente (file .mo in una cartella /languages/) ma queste traduzioni non vengono visualizzate sul tuo sito, la scheda Opzioni di localizzazione offre tre opzioni che aiutano WPML a trovarle e applicarle.
- Carica automaticamente il file
.model tema usandoload_textdomain. Forza WPML a chiamareload_textdomain()per il dominio di testo del tema. Usalo quando le traduzioni del tema sono presenti sul disco ma non vengono visualizzate. - Inserisci il dominio di testo. Sostituisce il dominio di testo rilevato automaticamente. Alcuni temi registrano il loro dominio di testo in modi non standard; questo campo ti permette di specificarlo esplicitamente.
- Usa i domini di testo del tema o del plugin quando le chiamate gettext non usano una stringa letterale. Un flag di compatibilità per temi/plugin che usano chiamate
__()con argomenti variabili invece di stringhe letterali. WPML non può rilevarle automaticamente e questa opzione lo aiuta ad applicare comunque le traduzioni.
Se il Supporto WPML ti indirizza qui, ti dirà quale opzione e quale dominio di testo impostare.
Rendi i temi multilingue
Regola gli ID per la funzionalità multilingue. Un livello di compatibilità per i temi che codificano rigidamente presupposti monolingua (ad esempio, un tema che memorizza un “ID dell’immagine in evidenza” una volta sola e usa la stessa immagine in tutte le lingue).
La maggior parte dei temi moderni compatibili con WPML non ne ha bisogno. I temi più vecchi o meno ottimizzati per WPML a volte sì. Attivalo se vedi riferimenti ai contenuti (immagini, menu, elementi in evidenza) che si mescolano in modo errato tra le lingue.
Filtraggio della lingua per le operazioni AJAX
Memorizza un cookie della lingua per supportare il filtraggio della lingua per AJAX. Alcuni plugin usano AJAX per recuperare i contenuti: elenchi di prodotti filtrati, elenchi di articoli impaginati tramite AJAX, risultati di ricerca durante la digitazione. Senza un cookie della lingua, l’endpoint AJAX non sa in quale lingua rispondere e restituisce risultati nella lingua sbagliata.
Attiva il cookie se noti questo sintomo: i visitatori della pagina in francese ottengono risultati in inglese dalle sezioni caricate tramite AJAX. È una soluzione a casella singola per un’intera classe di bug.
Pagine di accesso e registrazione
Consenti la traduzione delle pagine di accesso e registrazione. Il /wp-login.php integrato di WordPress e la schermata di registrazione non fanno parte dei normali contenuti tradotti da WPML. Si trovano al di fuori della catena di template del tema. Questa opzione li aggiunge all’insieme di pagine traducibili di WPML.
Se il tuo sito funziona su nginx, l’opzione richiede anche una modifica alla configurazione del server. La pagina rimanda alla guida per nginx di WPML con l’esatto blocco di configurazione.
Testi dei temi e dei plugin: impostazioni qui, scanner altrove
Due tipi di operazioni sulle stringhe dei temi e dei plugin si dividono su due schermate:
- Le impostazioni in questa pagina. Gestiscono la compatibilità per le traduzioni che il tema o plugin include già:
load_textdomain, sostituzione del dominio di testo, gettext non letterale. - Lo scanner ha una sua schermata. Quando hai bisogno di trovare le stringhe dei temi e dei plugin che non sono ancora registrate per la traduzione, usa la schermata Traduzione testi admin. È raggiungibile dalla scheda Stringhe in Traduzioni, sotto la sezione “non vedi le stringhe che stai cercando?”.
Per il flusso di lavoro completo della scansione delle stringhe, vedi Tradurre le stringhe.
wpml-config.xml personalizzato
I temi e i plugin compatibili con WPML includono un file wpml-config.xml che dice esattamente a WPML quali dei loro campi, tipi di post, tassonomie, shortcode e meta chiavi devono essere traducibili. WPML lo legge all’attivazione. Per ogni tema e plugin principale e popolare, questo significa che la traduzione funziona correttamente già pronta all’uso. Non devi fare nulla.
Quando il wpml-config.xml fornito con un tema o plugin non è sufficiente per il tuo sito, scrivi il tuo. WPML lo applica in aggiunta a quello fornito dal tema o plugin.
Quando scrivere il proprio wpml-config.xml
Tre scenari.
- Un campo che devi tradurre non è nel wpml-config.xml fornito. L’autore del tema o plugin non ha dichiarato un campo personalizzato come traducibile, ma tu hai bisogno di tradurlo sul tuo sito.
- Un campo ha l’impostazione predefinita sbagliata. Il wpml-config.xml fornito contrassegna qualcosa come Copia e tu vuoi Traduci, o viceversa.
- Stai creando un tema o un plugin personalizzato e vuoi dichiarare il suo comportamento di traduzione dalla pagina Impostazioni di WPML invece di includere un file wpml-config.xml nel tuo codice.
In ogni caso, il Supporto WPML potrebbe indirizzarti qui con l’esatto wpml-config.xml da incollare. Principalmente è un’azione guidata dal Supporto, occasionalmente dallo sviluppatore.
Perché modificare wpml-config.xml nell’area di amministrazione di WPML invece che nel file del tema
Potresti modificare direttamente il wpml-config.xml del tema o del plugin. Ma quella modifica andrà persa al successivo aggiornamento del tema o del plugin. L’editor nell’area di amministrazione di WPML in WPMLImpostazioniConfigurazione XML personalizzata sovrappone il tuo wpml-config.xml a quello fornito dal tema o dal plugin e sopravvive agli aggiornamenti. È il posto giusto per le modifiche specifiche del sito.
La struttura di un wpml-config.xml
La pagina è un editor XML. Incolla un blocco <wpml-config>...</wpml-config>, salva, e WPML applica il tuo wpml-config.xml.
Un wpml-config.xml minimo che dichiara uno shortcode come traducibile:
<wpml-config>
<shortcodes>
<shortcode>
<tag>add_to_cart_link</tag>
</shortcode>
</shortcodes>
</wpml-config>
I tipi di elementi che dichiarerai in genere:
<custom-fields>. Contrassegna un campo personalizzato cometranslate,copy,copy-onceonothing.<custom-types>. Dichiara un tipo di post personalizzato come traducibile.<taxonomies>. Dichiara una tassonomia personalizzata come traducibile.<shortcodes>. Elenca gli shortcode il cui contenuto WPML deve tradurre.<custom-term-fields>. Per i metadati dei termini.
Ogni elemento ha i suoi attributi (ad esempio, action="translate" su un campo personalizzato). Per il riferimento completo su wpml-config.xml (ogni elemento, ogni attributo, ogni valore consentito), vedi le Informazioni per gli sviluppatori di WPML.
Un flusso di lavoro pratico
Se il Supporto WPML ti fornisce un blocco wpml-config.xml da incollare:
- Apri WPMLImpostazioniConfigurazione XML personalizzata.
- Incolla il loro XML all’interno del blocco
<wpml-config>esistente (o sostituisci i contenuti se ti hanno fornito il blocco completo). - Salva.
- WPML applica immediatamente il tuo wpml-config.xml. Se dichiara un nuovo tipo di post o campo traducibile, la voce appare subito in WPMLImpostazioniTraduzione dei tipi di post o WPMLImpostazioniTraduzione dei campi personalizzati.
Se stai creando un tema o un plugin personalizzato e vuoi includere la sua configurazione WPML con il codice, dovrai inserire lo stesso blocco <wpml-config> in un file wpml-config.xml nella root del tuo tema o plugin. WPML lo legge all’attivazione. L’editor nell’area di amministrazione serve per le modifiche specifiche del sito; il file incluso serve per le impostazioni predefinite del tema o del plugin.