Consigli per l'aggiornamento a VirtueMart 1.1.4
Allora, a quanto pare l’aggiornamento automatico di VirtueMart non è ancora del tutto esente da problemi. In realtà, non sembra essere il processo di aggiornamento in sè ad avere problemi, quanto il reperimento della apposita patch dal sito ufficiale.
Se infatti cercate di fare l’aggiornamento in maniera completamente automatica, è possibile che otteniate un errore
Errore: Errore nella lettura del file XML di aggiornamento.
Dando per scontato che abbiate fatto un backup – sempre raccomandabile prima di un aggiornamento – vediamo come poter concludere l’operazione.
Hack del codice
Cercando nel forum di sviluppo di VirtueMart, ho scoperto che a quanto pare il problema è noto ed è risolvibile modificando il file
/administrator/components/com_virtuemart/classes/connectionTools.class.php
in particolare modificando la riga che recita
$result = trim( $data );
con
if(strpos($url, 'zip')) {
$result = $data;
} else {
$result = trim( $data );
}
Per cui se vi sentite dei validi programmatori, potete risolverlo con questo codice che impedisce – come i più esperti tra voi avranno notato – l’applicazione della funzione trim al file .zip contenente la patch di aggiornamento.
Caricare la patch manualmente
Una soluzione decisamente più agile è quella di usare comunque l’interfaccia amministrativa di VirtueMart ma ma caricando la patch di aggiornamento in manuale. Quindi, andate sulla pagina dei download di VirtueMart Italia a scaricare la patch corretta per la vostra versione; dopodichè andate nel pannello di controllo del vostro sito Joomla, cliccate su Estensioni -> VirtueMart -> Amministrazione -> Controllo aggiornamenti, e scegliete l’opzione “upload a patch”.
In questo modo l’aggiornamento non dovrebbe riscontrare problemi.
A presto per altri aggiornamenti sull’aggiornamento. 🙂
enrico
ciao! Bello l’articolo,
ma ho problema con IE7 e vorrei aggiornare VM a 1.1.4 ma sul mio joomla non c’è il percorso segnato
cioè non trovo Estensioni -> VirtueMart -> Amministrazione -> Controllo aggiornamenti, e scegliete l’opzione “upload a patch”
è il percorso per joomla 1.0?
Per la versione 1.5 dove vado?
Grazie tante!
Francesco
@enrico:
no, la versione 1.0 non la usiamo più da tempo; e in ogni caso il percorso indicato è valido in entrambe le versioni. E’ possibile che tu abbia una versione di *VirtueMart* troppo vecchia per l’aggiornamento automatico. Se vai semplicemente in Estensioni -> VirtueMart, nella pagina dovrebbe essere indicata la versione attuale del componente. La trovi? Che versione è?
Marco
Grazie per l’ottima guida, purtroppo non ho fatto il backup, ho provato a modificare il file come hai detto, ma non cambia nulla…
hai idee??
Joomla 1.5 bundled virtuemart 1.1.2
Francesco
@Marco:
l’errore durante l’aggiornamento, di fatto, impedisce che l’aggiornamento vada a buon fine. Per cui nessun file è ancora stato modificato; non è ancora successo nulla e fai ancora in tempo a fare il backup.
Suggerisco di riprovare l’aggiornamento caricando la patch manualmente; è sempre funzionato.