[Risolto] Problemi con WPML e FSE (Full Site Editing) in combinazione con Greenshift
Questo thread è stato risolto. Ecco una descrizione del problema e della soluzione.
Problem: You are experiencing issues with WPML on a site developed with Full Site Editing (FSE) and the Greenshift builder. In the FSE templates (header and footer) of the translated versions of the site, parts revert to the original language when marking a job as 'completed' using WPML's advanced editor. Links break due to missing language prefixes, and some texts automatically revert to the original language even though they were already translated. Disabling automatic translation does not prevent some words from being autonomously translated. With the classic WPML editor, upon saving, some template elements revert to the original language. Solution: We suspect this issue might be related to a known problem with Greenshift CSS synchronization. We recommend duplicating the footer in English using the Translation Management and then translating it. This workflow seems to resolve the issue. We have attempted to contact the author about this problem but have not received a response. For further details, please refer to this documentation: Greenshift CSS Synchronization Issues.
Please note that this solution might be irrelevant if it's outdated or not applicable to your case. We highly recommend checking related known issues at https://wpml.org/known-issues/, verifying the version of the permanent fix, and confirming that you have installed the latest versions of themes and plugins. If the issue persists, please open a new support ticket at WPML support forum.
Questo è il forum di assistenza tecnica di WPML, il plug-in multilingue di WordPress.
La sua lettura è permessa a tutti, ma la pubblicazione è riservata esclusivamente ai clienti di WPML. Il team di WPML risponde sul forum 6 giorni su 7, 22 ore su 24.
Contesto del problema:
Sto cercando di risolvere gravi problemi con WPML su un sito sviluppato con Full Site Editing (FSE) e il builder Greenshift. Il problema si verifica nei template FSE (header e footer) nelle versioni tradotte del sito. Link al problema: link nascosto
Sintomi:
Ogni volta che contrassegno un lavoro come 'completato' con l'editor avanzato di WPML, alcune parti dei template tornano nella lingua originale. I link risultano rotti perché manca il prefisso della lingua. Alcuni testi ritornano automaticamente alla lingua originale anche se erano già stati tradotti. Anche disabilitando la traduzione automatica, alcune parole vengono tradotte in autonomia. Con l'editor classico di WPML, al salvataggio, alcuni elementi dei template tornano alla lingua originale.
Domande:
Perché i template FSE tornano alla lingua originale dopo aver contrassegnato un lavoro come completato?
Come posso evitare che i link risultino rotti a causa della mancanza del prefisso della lingua?
Perché alcuni testi ritornano automaticamente alla lingua originale anche se già tradotti?
Come posso impedire che alcune parole vengano tradotte in autonomia anche con la traduzione automatica disabilitata?
Il problema non si presenta con le pagine, ma con i template dell'FSE. In questo caso, non duplico i template ma li traduci direttamente con l'editor classico di WPML (avevo provato anche con l'editor avanzato ma non risolveva il problema).
Adesso provo a impostare PHP 8.2, ma ho paura non sia quello il problema.
Niente, anche impostando la versione PHP alla 8.2 il problema persiste. Vi allego un link con la registrazione video del problema che si presenta: link nascosto
Provo a riassumerlo brevemente a parole:
1 - completo la traduzione del footer (come si può vedere la traduzione è al 100%)
2 - vado nel template del footer e come potete vedere ci sono dei blocchi che vanno in errore e vanno recuperati (premetto che questo comportamento si presenta soltanto in fase di traduzione, con la sola lingua italiana non c’è alcun problema del genere)
3 - una volta recuperati i blocchi il footer è funzionante e tradotto
4 - se vado però a modificare un qualsiasi elemento della traduzione (aggiungendo, come da video, una semplice “s” ad una parola) il footer torna in “blocco” e, gli elementi in errore, tornano in italiano
Se serve, posso crearvi un account amministratore nel sottodominio di test dove stiamo provando a sistemare il problema (lì potete fare tutte le prove che servono senza paura di rovinare qualcosa).
Non puoi migrare il sito nella Sandbox. Devi installare il tema e Greenshift e riprodurre il problema, basta che ci sia un blocco che non funziona, non devi ricreare tutto.
Ma così è praticamente impossibile. Anche perchè non sappiamo per certo quale sia l'incompatibilità con WPML rispetto agli altri plugin installati. Pensare di ricreare tutto quanto il sito sulla sandbox è non è fattibile. Se volete vi posso passare il Duplicator e lo caricate voi. Oppure, come accennato precedentemente, posso fornirvi gli accessi della versione online di test che è già disponibile.
Come ti ho già detto, non serve una copia del sito. Il problema è probabilmente con dei blocchi specifici, è davvero impossibile creare solo un footer con i blocchi che non si caricano?
Ho provato a ricreare l’errore nella sandbox e mi sono reso conto di questa anomalia:
Premettendo che parliamo sempre di template (quindi header e footer in questo caso), molti blocchi (direi un 95%) quando viene compiuta una traduzione degli elementi al loro interno perdono le classi o comunque subiscono una modifica della struttura HTML (allego screenshot per una migliore comprensione) e risultano quindi in errore.
A questo punto se si clicca su “Tenta il recupero” i blocchi tornano alla loro struttura HTML originale perdendo però la traduzione.
Un altro problema riscontrato è che utilizzando l’editor avanzato di WPML non vengono rilevati i link associati a determinati blocchi di Greenshift (Text Advanced); questo problema si risolve utilizzando l’editor classico di WPML o andando a modificare direttamente il template FSE.
Temo che si tratti di questo stesso problema, visto che è correlato al CSS.
Ho fatto un test con un clone del footer nella Sandbox:
se prima lo si duplica in inglese da Gestione Traduzioni e poi si traduce, il problema sembra risolto, per cui al momento ti suggerirei questo workflow.
Abbiamo già provato a contattare l'autore al riguardo senza avere risposta.
Non penso che il problema sia quello (relativo al CSS), perchè a noi il problema si presenta con l'HTML del blocco.
Comunque in passato avevamo già provato a duplicare il template-part: Il problema è che i due template (quello in lingua originale e quello duplicato nell'altra lingua), risultano sempre sincronizzati. Quindi salvando la lingua originale, quello duplicato perde le traduzioni.
Servirebbe un sistema/script per riuscire a svincolarli. Un po' come avviene con le pagine (dove possiamo scollegare due contenuti duplicati).