Joomla! - Aggiornamento da Joomla 2.5 a Joomla 3

google-plus Scritto da . Postato in Joomla!

Con il nuovo anno, il blog è passato dalla versione Joomla 2.5 alla 3.x. Il sito che ora vedete, è alla versione Joomla! 3.4.3. Consiglio a tutti di farlo, possibilmente, in vista del fatto che la comunity dal 31 dicembre 2014 ha dato ufficialmente lo stop degli aggiornamenti al supporto a lungo termine per Joomla 2.5, versione che dunque diventerà obsoleta.

In visione di ciò, l'ultimo pacchetto scaricabile, è Joomla 2.5.28 sotto forma di pacchetto onnicomprensivo o di aggiornamento a qualche versione precedente.

Se decidete di indugiare ancora sulla versione 2.5, consiglio in ogni caso di installare l'aggiornamento; Sappiate che dal momento che lo installate, nel pannello di controllo del vostro back end, o sito lato amministratore apparirà l'avviso in rosso che è ora di cambiare versione.

Ciò, lo si deve al fatto che pur essendo stabile e piena di opportunità tra estensioni e soluzioni gratuite, ormai come sicurezza e sistema Joomla 2.5 è giunto al suo tempo.

La crescita parallela di Joomla 3.x.x, ha consentito attraverso varie sperimentazioni di creare una versione altrettanto stabile, se non piacevole più del suo predecessore nell'uso. Ovvio, il passaggio non sarà semplice, nemmeno immediato. Basti solo a pensare che la conversione del sito, richiede tempo e sforzo e l'eliminazione di componenti, moduli e plugin che risultano incompatibili.

Io per primo, ho abbandonato alcuni componenti e plugin non più compatibili ne utilizzabili con Joomla 3. Prima di tutti, j4age, componente utilissimo (nato sulle radici di joomlaStats) per monitorare l'andamento del blog e delle visite alle singole pagine. Dispiace anche per plugin come MooAccordion che non solo non funziona ma impedisce il funzionamento di altre estensioni.

Per altri componenti in uso, è bastato cambiare nella dichiarazione del controller la classe JController con JControllerLegacy e nelle view la classe JView con JViewLegacy per rivederli riapparire pienamente funzionali e utilizzabili sul nuovo CMS engine. Purtroppo è stata una netta minoranza.

Del resto, l'abituarsi all'uso di una cosa nuova genera sempre un po' di ansia, ma è giustamente motivato. La sicurezza dei nostri dati in primis e poi, il fatto che la tecnologia avanza e non possiamo permetterci di rimanere indietro visto che la concorrenza sul web è spietata. Ciò che oggi è bello ed attraente, domani può risultare addirittura obsoleto. Il perché migrare, se conoscete l'inglese, lo potete leggere da qui:

Why Migrate - Joomla! Documentation

La guida joomla.it che trovate in rete è ottima. Di certo, se seguite i passaggi, non sprecherete tempo a cercare di ricreare il vostro sito da 0. A tal proposito, qualche giorno fa, un lettore mi ha chiesto per il passaggio dalla versione 2.1.9 di Phoca Download alla più recente 3.0.6 per Joomla 3. Ne ho trovato la soluzione! E presto, su questo post, ne pubblicherò la soluzione.

La guida all'aggiornamento lo potete trovare qui:

Guida all'aggiornamento dalla versione 2.5 alla 3 di Joomla!

Un'altra guida, la potete trovare su Joomla! Docs se conoscete l'inglese:

Joomla 2.5 to 3.x Step by Step Migration

Faccio notare che per quanto riguarda l'installazione manuale non è necessario scompattare il pacchetto Joomla_3.4.3-Stable-Update_Package.zip (Aggiornamento da Joomla 3.x.x a Joomla 3.4.3) e inserirlo nella cartella tmp per aggiornare da Joomla 2.5.28 alla 3.4.3. Infatti, come è spiegato dalla descrizione del pacchetto su Joomla.it, è tranquillamente installabile come qualsiasi estensione da Gestione estensioni anche da un sito basato su Joomla 2.5.28.

E' da sottolineare che questo tipo di installazione, facimente non aggiornerà in via definitiva la versione del database che molto probabilmente al termine dell'installazione sarà da correggere. Per farlo vi basterà andare su Gestione estensioni > Database e cliccare su Correggi.

Se ciò non funzionasse, si dovrà procedere a mano. Per farlo, come consigliato dalla guida, mettete il rapporto errori su massimo. Questo vi consentirà di vedere di volta in volta qual'è il componente o la tabella del database che genera l'errore:

es. Fatal error: ... /com_j4age/views/xxx.php

Errore di installazione - Causa componente

Se fosse un componente, come dallìesempio qui sopra, andate su Gestione etensioni > Gestisci, cercate l'estensione e disabilitatela. Se l'errore vi impedisce di accedere a Gestione estensioni, usate questa guida per disabilitare manualemente attraverso phpMyAdmin l'estensione agendo sul database:

Joomla! - Disabilitare estensione da Database

Errore di installazione - Causa database

Se fosse un errore da tabella database, per esempio per mancanza di un campo:

es. Unknown field in ... ALTER TABLE prefix_table... 'alias_title' ...

La soluzione, sta nell'usare phpMyAdmin per accedere al database, individuare la tabella (es. prefix_content) e aggiungere un campo alla struttura della tabella con il nome che viene indicato dall'errore (nell'esempio 'alias_title'). Avete capito bene!!! Aggiungetelo! Il motivo sta nel fatto che il pacchetto di aggiornamento si aspetta di trovare dei campi da dover rimuovere per adattare la struttura del vecchio Joomla 2.5.28 alla nuova struttura dettata da Joomla 3.4.1.

Se non trova quei campi non è che pensa: "Oggi è il mio giorno fortunato..." e passa oltre, no... Si blocca irrimediabilmente!
Per obbligarlo a sbloccarsi, inserite il campo nella tabella. e successivamente reinstallate il pacchetto di aggiornamento.

Ripetete l'operazione fino a non ottenere più errori di questo tipo.

SOS

Per qualsiasi consiglio o problema legato all'upgrade, contattatemi liberamente, appena possibile vi risponderò!
Se necessitaste aiuto e desiderate che qualcuno faccia per voi questa storica migrazione, contattatemi per un preventivo!

Alcuni suggerimenti e soluzioni

In questa sezione dell'articolo posto alcuni suggerimenti e link. Non mancherò in futuro di pubblicare soluzioni a problemi che riscontrerò lungo il cammino della migrazione a Joomla 3.

Metterò inoltre link a risorse utili ed efficaci per la risoluzione dei problemi legati a questa storica migrazione.

Phoca Download

Nell'aggiornamento di Phoca Download dalla versione 2.1.9 alla 3.0.6 per Joomla 3, ho riscontrato il problema che non venivano generate alcune tabelle. Il bug si manifestava con un errore mysql (1146 Table inexistant) e un errore di sistema di Joomla! su file error.php (Fatal error: ...RuntimeException::get() ...error.php) In particolare la tabella #__phocadownload_styles. La soluzione sta nell'aprire il pacchetto scaricato dal sito di Phoca.cz e aprendo la cartella /installation/mysql prelevare ed aprire in gedit o pari il file install.utf8.sql.

Questo file contiene la definizione di tutte le tabelle appartenenti al nuovo o rigenerato componente Phoca Download.

  1. Copiate la definizione della tabella mancante (CREATE TABLE #__XXX...) e i dati ivi contenuti (istruzioni INSERT INTO #__XXX... ).
  2. Aprite dunque phpMyAdmin, selezionate il database del vostro sito Joomla! e selezionate nel menu nella parte alta della finestra "SQL".
  3. Nell'apposito spazio incollate quanto avete copiato dal file install.utf8.sql, assicurandovi di sostituire il prefisso #__ che precedere il nome della tabella con il prefisso appartentente al vostro sito (es. mys01_ ).
  4. Cliccate su Esegui e testate successivamente il componente. Probabilmente lo avete riportato in vita!

Se a conferma, volete leggere quanto è spiegato in inglese dalla Documentation di Phoca Download potete cliccare sul link qui sotto:

Phoca Download - Installation Problem Solving

Phoca Gallery

Se prima dell'aggiornamento a Joomla! 3.x.x vi rendete conto che la vostra installazione di Phoca Gallery non è all'ultima versione per Joomla! 2.5 (attualmente la 3.2.8), fate l'aggiornamento per poi proseguire con l'upgrade alla nuova versione di Joomla!

Una volta installato Joomla! 3, aggiornato Phoca Gallery dalla versione 3.2.8 alla 4.1.2, ho riscontrato il problema che non veniva generata una tabella in particolare. Il bug si manifestava con un errore mysql (1146 Table inexistant) e un errore di sistema di Joomla! su file error.php (Fatal error: ...RuntimeException::get() ...error.php). Il problema, è lo stesso di phoca download: La tabella #__phocagallery_styles manca all'appello. La soluzione, come per l'altra estensione di casa Phoca.cz sta nell'aprire il pacchetto scaricato dal sito ufficiale e aprendo la cartella /installation/mysql prelevare ed aprire in gedit (o pari programma) il file install.utf8.sql.

Questo file contiene la definizione di tutte le tabelle appartenenti al nuovo o rigenerato componente Phoca Gallery.

  1. Copiate la definizione della tabella mancante (CREATE TABLE #__XXX...) e i dati ivi contenuti (istruzioni INSERT INTO #__XXX... ).
  2. Aprite dunque phpMyAdmin, selezionate il database del vostro sito Joomla! e selezionate nel menu nella parte alta della finestra "SQL".
  3. Nell'apposito spazio incollate quanto avete copiato dal file install.utf8.sql, assicurandovi di sostituire il prefisso #__ che precedere il nome della tabella con il prefisso appartentente al vostro sito (es. mys01_ ).
  4. Cliccate su Esegui e testate successivamente il componente.

Ora, se nel frontend avete qualche richiamo a gallerie contenute nel componente, con ogni probabilità, riuscirete a vederne il contenuto senza errori.

JoomShopping

Ottimo componente per e-commerce non altrettanto famoso come Virtuemart o RedShop. Lo potete trovare qui:

JoomShopping

L'aggiornamento previo installazione di Joomla! 3, deve essere fatto con ferrea scrupolosità. Infatti, se avete una vecchia versione installata sul vostro Joomla! 2.5.x, e provate a installare l'ultima versione per Joomla! 2,5,x, il sistema ve lo permetterà senza errore alcuno. Il problema si farà sentire poi, in quanto non avrete le tabelle del database aggiornate ed una marea di effetti indesiderati post installazione. L'unica soluzione sarà ripetere tutta l'operazione da capo (se avete un backup naturalmente).

Gli aggiornamenti per questo componente infatti, non sono comulativi e vanno fatti uno per uno fino a raggiungere la versione ultima per Joomla! 2.5.x.

Una volta fatto questo, prima dell'upgrade a Joomla! 3, va fatto l'aggiornamento alla versione per Joomla! 3.x. Nessuna paura se vederete avvisi del tipo Nessun supporto per JHTML:Bootstrap o simili. La procedura va fatta così: Ve lo dico per esperienza!

Anche in questo caso, ci sono pacchetti che fanno il salto dalla versione 3.18.1 alla 4.6.0. Per arrivare poi alla versione ultima del componente anche qui gli aggiornamenti vanno fatti tutti... fino alla 4.9.2 (Ultima versione del componente). Non saltatene nemmeno uno... Armatevi di pazienza, scaricateli tutti uno ad uno ed installateli.

Dopo e solo dopo l'installazione dell'upgrade a Joomla! 3.x, consiglio di scompattare il pacchetto della 4.9.2 e sovrascrivere tutti i file nella cartella components e nella cartella administrator. Questo passaggio che potete evitare se vedete che a frontend e a backend tutto funziona senza defiance di funzionamento e grafico, lo consiglio a chi dovesse vedere che il menu lato amministratore non viene caricato dovutamente.

A questo punto, dovreste avere già JoomShopping funzionante sul vostro nuovo sito.

Se volete fare una verifica ulteriore, vi consiglio di scaricare dalla sezione Download, l'addon per il test delle tabelle e del database. Una volta installato, nella sezione Addons del componente, potete lanciare il test e vedere quali disparità sussistono. Se poi siete in grado di farlo, fate le modifiche al database direttamente da phpMyAdmin...

Cercasi sostituto a j4age

Se volete uno strumento di monitoraggio valido e funzionale come j4age, vi è un sistema Open Source al quale potete affidarvi: piwik.org. Non è un componente Joomla! ma un vero e proprio website (separato da Joomla!) con funzioni di monitoraggio e codice Javascript da integrare nelle pagine da monitorare, un po' come Google Analytics...

Potete installarlo nella stessa cartella di installazione di Joomla!, sotto la cartella statistiche (è solo un suggerimento).
Faccio presente che necessita di un database: Starà a voi la decisione se assegnare a Piwik lo stesso database di Joomla! o se crearne uno ad hoc per lui.

Io ho optato per la seconda creando un sottodominio (dipende dal vostro provider) e un database esclusivamente per il sistema di monitoraggio. Così se vi sono problemi con Piwik, non si va ad intaccare o danneggiare il database di Joomla!.

Altra cosa interessante di Piwik, è la possibilità di scaricare sul proprio smartphone l'app omonima, per poter monitorare anche da telefono l'andamento del nostro sito... Semplicemente fantastico!!!

MooAccordion

Se nel sito che avevate in Joomla 2.5 usavate il content plugin MooAccordion per creare accordion di testo nei vostri articoli, sappiate che a causa del fatto che in Joomla 3 le librerie MooTools sono considerate "deprecated", il plugin non solo non funzionerà affatto, ma vi creera un sacco di problemi compreso il mancato funzionamento di Phoca Download.

Alternativa valida, è quella di scaricare e usare un plugin content come Accordion Plant Light plugin. E' un plugin che si basa sulle librerie jQuery, altrettanto facile da usare e che consente dopo l'installazione di creare semplici accordion all'interno dei vostri articoli.

Errore nel caricamento del componente: com_joomlaupdate, 1

Questo è un'errore che potete riscontrare modificando le Opzioni del componente di aggiornamento di Joomla da Supporto a lungo termine a Supporto a breve termine come cosigliato dalla guida per un'installazione diretta da pannello. Ciò è causato molto probabilmente dall'installazione di qualche aggiornamento precedente che facilmente non è andato del tutto a buon fine.

Se questo fosse il vostro problema, consiglio di eseguire la procedura manuale descritta in precedenza nell'articolo.

SobiPro

Se avete installata una versione di SobiPro e quindi lo avete portato all'ultima versione prima dell'aggiornamento, probabilmente a seguito dell'upgrade il menu amministrativo di Joomla è stato caricato solo in parte. Praticamente inutilizzabile.

Comunque sia, prima o dopo l'aggiornamento è bene disabilitare il modulo lato amministrativo "SobiPro Admin Menu"

  • Andate in Estensioni > Gestione Moduli
  • Da Filtro, selezionare Amministratore.
  • Trovate il modulo "SobiPro Admin Menu" e sospendetelo.

500 - JHtmlBehavior::mootools not found

Come già detto precedentemente, le mootools sono deprecate. Alcune istruzioni di richiamo alle librerie mootools che in Joomla 2.5 funzionavano, sono state ora rimosse da Joomla 3. Se da qualche parte nel vostro sito, view o template che sia, compare questa istruzione:

JHtml::_('behavior.mootools');
oppure
JHtmlBehavior::mootools();

Per risolvere l'errore, sostituite con :

JHtml::_('behavior.framework');

Error 0

Se riscontrate questo errore, è perché è rimasto attivo un plugin o un modulo che proviene dal sito precedente con la versione 2.5 di Joomla. Infatti, tra la versione 2.5 e la 3.x sono cambiati i nomi di alcuni metodi del core. Prtobabilmente l'estensione incriminata, fa riferimento a uno di essi.

Tra questi, ci sono alcuni metodi per la formattazione delle date, che è il problema che ho riscontrato io migrando vivitrentino.eu.

  1. Disabilitare l'estensione

  • La soluzione più semplice, consiste nel mettere da Sistema > Configurazione Globale > Server > Rapporto errori su Massimo. Annotatevi l'estensione che genera l'errore.
  • Andate su Gestione estensioni, filtrate per nome fino a trovare l'estensione che ha creato l'errore e disabilitatela o disinstatallatela.
  1. Cambiare il riferimento ai metodi del core

Questo metodo, è inutile a dirsi, è solo per utenti esperti in grado di manipolare il codice PHP dell'estensione e quindi di individuare l'errore e correggerlo.

  • Facendo come nella prima soluzione, mettendo il Rapporto errori a Massimo, non solo veniamo a scoprire il nome dell'estensione, bensì il nome del metodo e la riga del file che nell'estensione ha generato il problema.
  • Ubicate il file e apritelo.Scorrete fino a raggiungere la riga che riporta il metodo errato.
  • Di seguito, un link che riporta i cambiamenti avvenuti tra la versione 2.5 di Joomla e la 3.x:

Potential backward compatibility issues in Joomla 3 and Joomla Platform 12.2

  • Una volta trovato l'hack che fa per voi, sostituite il nome del metodo che vi crea il disagio e sostituiltelo avendo cura di testarne poi il funzionamento.

Fatal error: Registry::getValue()

Può capitare di riscontrare questo errore dopo aver ottenuto una pagina bianca e messo il rapporto errori di... Sistema > Configurazione Globale > Server > Rapporto errori su Massimo.

Fatal error: Call to undefined method Joomla\Registry\Registry::getValue()

La funzione a cui fa riferimento questo errore, è stata rimossa con Joomla 3. Per risolvere il problema:

  • Trovate il file citato nell'errore (di solito viene fornito il percorso e il numero della riga che ha generato l'errore).
  • Sostituite
$config->getValue("...");

con:

$config->get("...");

 


Se hai gradito l'articolo, condividilo, basta un click!

Aggiungi commento


Codice di sicurezza
Aggiorna

  • logo prontopro
  • logo boutique serramento
  • koilab japan and tropical fish farm
  • Trasloco economico - gruppo Arco Traslochi
  • logo flash pulizie
  • logo revolution
  • logo planetkoi small
  • logo finiture
  • ick logo template
  • montaggio mobili trento

Realizzato da: Daniele Gagliardi
Viale Monache 3 - 38062 Arco - TN
- Contattami -

Per essere più facile ed intuitivo, il blog fa uso dei cookie, piccole porzioni di dati che consentono di capire come gli utenti navighino e ne visualizzino le pagine. I cookie non registrano alcuna informazione personale sull'utente ed eventuali dati identificabili non verranno memorizzati. La nostra Privacy Policy è cambiata: Ti invitiamo a prenderne visione. Oppure visiona la nostra Cookie Policy: