This is the technical support forum for WPML - the multilingual WordPress plugin.

Everyone can read, but only WPML clients can post here. WPML team is replying on the forum 6 days per week, 22 hours per day.

This thread is resolved. Here is a description of the problem and solution.

Problem: Dopo l'aggiornamento a WCML 4.3.3. alcune immagini spariscono dal database.

Solution: Questo è un bug presente nella versione 4.3.4 di WCML. Per evitare il problema, modificare il file /woocommerce-multilingual/inc/class-wcml-upgrade.php alla linea 706.
Prima:

private function upgrade_4_3_4() {
    global $wpdb;
 
    //delete wrong duplicated attachments
    $wpdb->query( "DELETE FROM {$wpdb->prefix}icl_translations WHERE `element_id` IN ( SELECT ID FROM {$wpdb->prefix}posts WHERE `guid` LIKE '%attachment_id%' ) " );
    $wpdb->query( "DELETE FROM {$wpdb->prefix}postmeta WHERE `post_id` IN ( SELECT ID FROM {$wpdb->prefix}posts WHERE `guid` LIKE '%attachment_id%' ) " );
    $wpdb->query( "DELETE FROM {$wpdb->prefix}posts WHERE `guid` LIKE '%attachment_id%'" );

sostituire con:

private function upgrade_4_3_4() {
        global $wpdb;
  
        $affected_ids = $wpdb->get_col( "SELECT ID FROM {$wpdb->prefix}posts AS p LEFT JOIN {$wpdb->prefix}postmeta AS pm ON p.ID = pm.post_id WHERE p.`guid` LIKE '%attachment_id%' AND pm.meta_key = '_wp_attached_file' AND pm.meta_value = ''" );
        $affected_ids = join( ',', $affected_ids );
        //delete wrong duplicated attachments
        $wpdb->query( $wpdb->prepare( "DELETE FROM {$wpdb->prefix}icl_translations WHERE `element_id` IN ( %s )", $affected_ids ) );
        $wpdb->query( $wpdb->prepare( "DELETE FROM {$wpdb->prefix}postmeta WHERE `post_id` IN ( %s ) " , $affected_ids ) );
        $wpdb->query( $wpdb->prepare( "DELETE FROM {$wpdb->prefix}posts WHERE `ID` IN ( %s ) ", $affected_ids ) ) ;
  
    }

This topic contains 12 risposte, has 2 voci.

Last updated by Laura 1 anno fa.

Assigned support staff: Laura.

Autore Post
October 30, 2018 at 5:31 pm

marilisaC

Non ho ancora risolto il problema con WooCommerce Multilingual: aggiornando il plugin all'ultima versione infatti alcune immagini "scompaiono" a random dai prodotti in entrambe le lingue, oltre che dal fronted anche da backend (sia nella scheda prodotto che nella Media Library).

Potete verificare? L'accesso che ho fornito è con l'errore presente. Ho già fatto prima tutte le prove di disattivazione del plugin, cache, etc ma non ha funzionato.

Altra nota: è possibile disattivare il plugin WPML media e cancellare i "duplicati"? Ho letto che lo fate tramite script. Anche se non sono duplicati fisici voglio eliminare le stringhe dal database. Ovviamente non in questa versione perché è compromessa.

NB. è possibile rimuovere ogni riferimento al sito/immagini in questo e precedenti ticket? Non è possibile inviare ticket privati?

November 1, 2018 at 8:59 am #2868295

Laura
Supporter

Languages: Inglese (English ) Italiano (Italiano ) Portoghese, Brasile (Português )

Timezone: Europe/Rome (GMT+01:00)

Salve,

potresti darmi qualche esempio di prodotto in cui le immagini sono scomparse?
Avrei anche bisogno delle informazioni di debug di WPML.
Non hai notato se c'è qualcosa che scatena la cancellazione, oltre all'aggiornamento? Per esempio modificare il prodotto, una pagina ecc.

WPML Media è necessario per la traduzione dei prodotti di WooCommerce, disabilitandolo ti apparirà un messaggio di errore, perciò non ti consiglio di farlo.

Non è possibile inviare ticket privati, il forum è pubblico in modo che altri clienti possano cercare possibili soluzioni senza necessariamente dover contattare il supporto. Posso cancellare le immagini dall'ultimo ticket, ma non vedo infomazioni correlate al sito. Le informazioni di debug sono visibili solo ai supporter.

November 1, 2018 at 4:15 pm #2869394

marilisaC

Salve, l'unica cosa che scatena il problema è l'aggiornamento di WooCommerce Multilingual dalla Versione 4.3.3 in poi. Non c'è apparentemente una logica, ed avviene immediatamente dopo l'aggiornamento.
Alcuni esempi sono nella categoria Skirts.

Ok per Wpml Media, ma nel caso non risolvessi il problema e volessi cambiare plugin per la traduzione è una cosa che potete fare? Anche perché se non si riesce a risolvere il problema non vedo altra soluzione che cambiare plugin.

Sì per favore cancellate le immagini nei precedenti ticket e il link di un altro sito nel primo ticket.

Grazie

November 2, 2018 at 9:10 am #2871290

Laura
Supporter

Languages: Inglese (English ) Italiano (Italiano ) Portoghese, Brasile (Português )

Timezone: Europe/Rome (GMT+01:00)

Salve,

ho controllato il sito e fatto alcune prove. Apparentemente le immagini sono proprio scomparse dal database, che è qualcosa che non dovrebbe accadere in nessun caso.

L'unica cosa che ho notato è che le immagini scomparse hanno dei nomi estremamente lunghi (ho controllato sul sito live, immagino siano le stesse). Teoricamente, questo non dovrebbe causare problemi ma è l'unica cosa in comune alle immagini scomparse.

Non avresti un backup del sito prima dell'aggiornamento? Eventualmente anche del sito live dove mi sembra che WPML non sia installato.
Noi suggeriamo il plugin Duplicator per avere una copia del sito, di cui dovresti poi mandarmi il link.

November 5, 2018 at 8:11 am #2875608

marilisaC

Buongiorno,
ho installato nel sottodominio test la versione attualmente live del sito in cui:
- le immagini sono visibili
- WPML è installato quindi non è un problema di url
- WooCommerce Multilingual è alla versione 4.3.3
Infatti la cosa assurda è che vengano cancellate dal database. L'unica azione che provoca questo enorme danno è l'aggiornamento a versioni superiori di WooCommerce Multilingual 4.3.3. Aggiornando infatti gli altri plugin WPML (e non) non succede.

Attendo vostro riscontro.

November 5, 2018 at 3:11 pm #2877330

Laura
Supporter

Languages: Inglese (English ) Italiano (Italiano ) Portoghese, Brasile (Português )

Timezone: Europe/Rome (GMT+01:00)

Salve,

grazie per il sito di test. Ho provato ad accedere ma a quanto pare la password è sbagliata.
Potresti controllare per favore?

November 5, 2018 at 5:03 pm #2877698

marilisaC

Scusa!
Cambiata con questa [passowrd rimossa], stesso nome utente di prima

November 6, 2018 at 9:43 am #2880128

Laura
Supporter

Languages: Inglese (English ) Italiano (Italiano ) Portoghese, Brasile (Português )

Timezone: Europe/Rome (GMT+01:00)

Ciao,

grazie per la password. Sto migrando il sito su un server sicuro che usiamo per queste cose. Una volta che l'avrò copiato proverò l'aggiornamento e se va a buon fine possiamo ipotizzare un problema di server, altrimenti potrebbe essere un qualche problema di compatibilità.

Ti aggiorno il prima possibile.

November 6, 2018 at 9:47 am #2880170

marilisaC

Grazie mille per il tuo aiuto!

November 6, 2018 at 2:25 pm #2881284

Laura
Supporter

Languages: Inglese (English ) Italiano (Italiano ) Portoghese, Brasile (Português )

Timezone: Europe/Rome (GMT+01:00)

Ciao,

ho fatto alcuni test, il problema persiste anche disattivando tutti i plugin e passando ad un tema di default. Sembrerebbe esserci un bug nella versione 4.3.4 di WCML che cancella le immagini.

Il bug non è ancora risolto in maniera definitiva, ma qui trovi l'ultima versione di WCML con una patch che dovrebbe risolvere il problema: hidden link
Puoi provare ad installarla e verificare se l'aggiornamento va a buon fine? Prima cancella del tutto la copia attuale di WCML e installa quella tramite Plugin -> Aggiungi nuovo

Fammi sapere se funziona.

November 7, 2018 at 11:45 am #2884977

marilisaC

Ciao,
funziona! Grazie mille per il tuo supporto, l'unico utile dopo 2 ticket!

Spero che non succeda la stessa cosa con il prossimo aggiornamento, ma almeno sappiamo il motivo 🙂

November 7, 2018 at 11:46 am #2884978

marilisaC

My issue is resolved now. Thank you!

November 7, 2018 at 11:52 am #2885024

Laura
Supporter

Languages: Inglese (English ) Italiano (Italiano ) Portoghese, Brasile (Português )

Timezone: Europe/Rome (GMT+01:00)

Ciao,

il team di compatibilità sta lavorando ad un fix permanente da inserire in uno dei prossimi aggiornamenti. Finché non viene aggiunto, è probabile che il problema si ripresenti e che sia necessario aggiungere nuovamente quelle righe prima dell'aggiornamento.

Controlla il changelog dei nuovi aggiornamenti qui prima di installarli, e se in dubbio chiedi:
https://wpml.org/it/download/woocommerce-multilingual/?section=changelog