Problema aggiornamento QTRANSLATE su WordPress

wordpress-multilingua

Autore: FlavioWeb

Qtransalte è un noto plugin per WordPress utilizzato per gestire siti multilingua. E’ un plugin molto utile che facilita all’utente la gestione di articoli e pagine in diverse lingue.

INTEGRAZIONE APRILE 2017: Qtranslate oggi non è più supportato ma è stato sviluppato un nuovo plugin che parte dalle sue basi ma ne migliora il funzionamento: qTranslate X. Potrebbe interessarti leggere la guida alla configurazione di qTranslate X ?

 

pannello-qtranslate

Personalmente non amo questo tipo di soluzioni in quanto, se da un lato la gestione delle lingue risulta facile ed intuitiva, dal lato SEO non è assolutamente l’ideale.

E’ dal 26 Gennaio 2014 che non viene rilasciata una nuova release di Qtranslate ed i siti che lo hanno installato, nel momento in cui WordPress viene aggiornato automaticamente o manualmente ad una versione superiore alla 3.8.1, presentano problemi nell’editor degli articoli che appaiono scombinati e non divisi per tab come dovrebbe essere.

La soluzione al problema Qtranslate c’è, ma è solo una “pezza” da mettere in attesa che gli autori del plugin rilascino una versione compatibile con l’ultima release di WordPress. Vediamola…

L’AGGIORNAMENTO AUTOMATICO DI WORDPRESS

Dalla release 3.7 di WordPress è stato introdotto l’aggiornamento automatico del core di questo CMS. Vuol dire che tutti i siti creati o aggiornati a questa versione, man mano che escono nuovi aggiornamenti eseguono un update automatico all’ultima versione rilasciata.

PROBLEMI CON QTRANSLATE DALLA VERSIONE 3.8.2

wordpress-multilinguaQuando WordPress si aggiorna alla versione 3.8.2 qtranslate inizia a dare il problema di visualizzazione degli articoli nell’editor con la conseguente impossibilità di utilizzarlo per modificarli o crearne di nuovi.

Molti webmaster, per risolvere questo problema, hanno effettuato un downgrade della versione di WordPress, riportandolo all’ultima versione compatibile (la 3.8.1). In realtà c’è la possibilità di effettuare l’aggiornamento di WP e, con una piccolissima modifica al codice, di risolvere il problema creatosi in qtranslate (metodo testato fino alla versione WP 3.8.4).

RESTA DI STUCCO E’ UN BARBATRUCCO

Con il vostro client FTP scaricate il file qtranslate.php sul vostro desktop (si trova seguendo il percorso Wp-content –> Plugin —> Qtranslate).

Ora aprite il file qtranslate con il vostro editor di testo (consiglio notepad++) e andate a sostituire questa riga di codice

define(‘QT_SUPPORTED_WP_VERSION’, ‘3.8.1’);

Con questa

define(‘QT_SUPPORTED_WP_VERSION’, ‘3.8.4’);

dove 3.8.4 è l’ultima versione ad oggi della release 3.8

In pratica abbiamo detto a qtranslate che la versione di wordpress supportata è la 3.8.4

Fine delle modifiche. Ricaricate il file qtranslate.php sul server, sovrascrivendo il vecchio e vedrete che tutto è andato a posto.

ATTENTI AGLI AGGIORNAMENTI AUTOMATICI DI WORDPRESS

Il tutto si potrebbe concludere qui, ma nel caso una nuova versione di WordPress 3.8 venisse rilasciata, il vostro core si aggiornerebbe di nuovo (ad esempio alla 3.8.5) e il problema si ripresenterebbe. Per evitare questo, il consiglio è quello di disabilitare gli aggiornamenti automatici.

COME DISABILITARE GLI AGGIORNAMENTI AUTOMATICI DI WORDPRESS

modificare wp-configAnche in questo caso dobbiamo utilizzare il nostro client FTP e scaricare sul nostro desktop il file wp-config.php (lo trovi nella root del sito).

Aprilo e in fondo alla pagina scrivi questa riga di codice

define( ‘AUTOMATIC_UPDATER_DISABLED’, true );

Con questa istruzione abbiamo detto a WordPress che non deve più aggiornarsi automaticamente e che starà a noi decidere se effettuare l’aggiornamento manualmente quando ne sarà rilasciato uno.

Di nuovo, ricarica il file wp-config.php sul server sovrascrivendo il vecchio.

Ora si che abbiamo finito!

ALTRA SOLUZIONE PER RISOLVERE IL PROBLEMA GENERATO DA QTRANSLATE

Spulciando nel web sono incappato in questa soluzione che risolve del tutto il problema e permette di aggiornare a piacimento wordpress.

Utilizzando un programma per il trasferimento files via FTP, portatevi su

Plugin —> Qtranslate

Scaricate il file qtranslate_core.php

Apritelo con un editor di testo

Alla riga 455 sostituire

return $before.($format, $date).$after;

con

return $before->post_content.strftime($format, $date).$after;

Salva e chiudi.

Ricarica il file sul server.

Problema risolto!

CONSIDERAZIONI

L’utilizzo di qtranslate, così come è oggi, non è assolutamente consigliato per ragioni di sicurezza. E’ risaputo che per evitare attacchi di malintenzionati al proprio sito, è consigliabile effettuare sempre gli aggiornamenti, sia di WordPress che dei Plugin installati. Ad oggi, se si vuole continuare a far funzionare qtranslate, bisogna ricorrere a questi escamotage, ma il plugin rimane sempre non aggiornato. Se un hacker trovasse una falla di sicurezza nel plugin, non ci sarebbero sviluppatori che vanno a correggere il problema.

sito multilingua in multi installazionePer un sito multilingua invece l’ideale sarebbe avere più installazioni di WordPress ognuno in una lingua, utilizzando ad esempio il metodo delle sottocartelle (en.miosito.xx, fr.miosito.xx, ecc…). Questo tipo di implementazione a mio avviso porta notevoli vantaggi tra cui la possibilità di aggiornare sempre WordPress e di ottimizzare a livello SEO ogni lingua (ti pare poco?). Il contro è costituito dal dover gestire più siti, ma vuoi mettere un po’ di impegno in più con la sicurezza ed una buona SEO?

 

Se proprio non potete fare a meno di utilizzare un plugin per gestire un sito multilingua, allora potete usare Ceceppa, prodotto italiano ottimo e potente a livello gestionale e molto più SEO friendly rispetto a Q translate. Questo il link all’autore Alessandro Senese su Google Plus.

ceceppa-multilingua