Aggiornare il sito ad una nuova versione

Prima di aggiornare!
Controllare che il server web soddisfi i requisiti tecnici.

Zen Cart® Requisiti v1.5.4 Server:
* PHP 5.2.10 alla 5.6.x, Apache 2.0 a 2.4, e MySQL 4.1.3 a 5.6.x.
* Apache deve essere configurato con AllowOverride impostato sia ‘All’ o almeno sia ‘Limit’ e parametri “Indici”, e preferibilmente il parametro ‘Opzioni’ pure.
* PHP deve essere configurato per supportare CURL con OpenSSL
Mentre Zen Cart® può essere eseguito su server di Windows / IIS, i server Linux / Apache sono raccomandati per i migliori risultati.

Questa è una guida di base per l’aggiornamento Zen Cart®. Se non è stato ancora installato Zen Cart, si prega di consultare il file 1.readme_installation.html per le istruzioni di installazione.

Per aggiornare Zen Cart® versione italiana, c’è bisogno degli stessi strumenti di base usati per installare e personalizzare, in primo luogo: un programma FTP, un editor di testo per codice HTML / PHP, phpMyAdmin o accesso equivalente al database MySQL, ed accesso al pannello di gestione webserver.
Inoltre servirà un strumento per confrontare i file come WinMerge, Beyond Compare o ExamDiff (Linux). C’è anche BBedit per Mac.

Aggiornamento segue dei semplici passi. Consigliamo di prendersi il tempo necessario per effettuare ogni fase attentamente e metodicamente. Non avere fretta e come sempre, essere sicuri di avere fatto per prima cosa un backup. Consigliamo vivamente di prestare particolare attenzione e familiarizzare con i dati demo della nuova versione, in modo che si possa facilmente interagire con le novità contenute della nuova release.

1. Preparazione

Decomprimere una copia della nuova versione di Zen Cart®, caricarlo sul server web in una cartella “demo” e installare la nuova versione in un database separato ev. includendo i prodotti demo. Questa versione solo per conoscere e scoprire la nuova versione e potersi abituare alle sue nuove funzionalità. I dati possono essere eliminati dopo aver fatto esperienza e prima di procedere oltre.

Fare un backup completo del database (dump file SQL). Memorizzare il file sul PC per eventuali riferimenti in futuro.
Fare un backup completo dei file del sito attuale (ftp del PC e zip).
Mantenere il backup sul PC da utilizzare in fasi successive. Magari chiamare questa cartella “\zencart_backup”.

Adesso cerchiamo di scoprire le differenze / personalizzazioni tra l’attuale sito e la versione originale di Zen Cart.

Decomprimere una copia dei file Zen Cart® originali della versione originariamente installata (o dell’ultimo aggiornamento).
Questa dovrebbe essere collocata in una cartella di lavoro separato sul PC (tipo “\zencart_originale”).

Fare una lista di tutti i componenti aggiuntivi installati, per riferimenti futuri.

Utilizzare uno strumento come WinMerge per confrontare i file Zen Cart® “originali” in “\zencart_originale” contro i file di backup che posti in “\zencart_backup”.
Annota tutti i file che sono “diversi”. In WinMerge, fare doppio clic su ogni file ed annotare quali siano le loro differenze.
Se le differenze sono solo di lingua e definizioni per il testo, questo sarà semplice e veloce da sistemare.
Se le differenze sono reali parti di programmazione / codice, sarà necessario prendere appunti dettagliati al fine di riportare tali modifiche nella nuova versione.
Qualsiasi modulo / add-on installato in precedenza probabilmente avrà subito cambiamenti di programmazione e potrebbe non essere pienamente compatibile con la nuova versioni di Zen Cart®.
Il tuo elenco ti potrà aiutare a ritrovarne fonte e potrebbe essere utile scaricarne la nuova versione per dare un’occhiata al readme ed al codice contenuto.
Potrebbe al limite essere necessario contattare l’autore per chiedere la versione aggiornata.

Redatto elenco dei file modificati ecc. in questa fase è possibile verificare il corretto posizionamento nella struttura template-override Zen Cart®, se non è stato già fatto.
Ev. approfondire nel sito Zen Cart® le FAQ relative all’argomento.

2. Esecuzione

Scaricare e decomprimere l’ultima versione Zen Cart® nel PC nella terza cartella (tipo “\zencart_nuovo”), separata dalle altre due cartelle precedenti.

Utilizzando l’elenco dei file redatto in precedenza, passare attraverso ogni file “modificato” per apportarne le modifiche dalla versione vecchia alla nuova versione.
Modifiche idiomi sarà solo una questione di copia-e-incolla.
Modifiche di programmazione per componenti di base sarà più difficile e richiederà dei test completi.
Si potrà trovare utile WinMerge in questa ambito per applicare le modifiche direttamente fra i file.
Tuttavia con molte differenze correlate alle proprie personalizzazioni vi potrebbero essere dei conflitti da studiare e risolvere.

Notare che per diversi cambiamenti si dovrà fare attenzione ad eventuali file che sono stati sovrascritti senza il sistema di template override.
Pertanto consigliamo di confrontare i file da /include/templates/MyTemplate/ * a /include/template/template_default/ * …
E lo stesso per confronti e sostituzioni di file di lingua, moduli, ecc

Predisporre un nuovo database per installare la nuova versione di Zen Cart® tramite pannello di controllo webserver o richiedendolo al fornitore hosting.

3. Il metodo per aggiornare uno Zen Cart versione Italiana che invitiamo a seguire è

1 – installare la nuova versione in una cartella “/-NUOVO”

2 – copiare e riportare dati, file di lingua modificati, immagini ecc. fra i due store, “vecchio” e “nuovo” (come sopra indicato).

3 – esportare & importare fra i due database i clienti con indirizzi ed ordini;

4 – proseguire con tutta la parte del catalogo composta da categorie, articoli, attributi ecc;

5 – comparare i due database sarà semplice vedere cosa c’è e cosa manca da trasferire;

6 – verificare i dati / la sincronia fra i due store e testare tutto il nuovo ambiente;

7 – sostituire i due store fra loro modificando dati e percorsi nei due file di configurazione e nel DB
(per il percorso della cache):
– Il vecchio spostandone i file entro una cartella /_OLD (e ricordarsi poi di scaricarla ed eliminarla)
– Il nuovo alzando i file dalla cartella “/-NUOVO” nella root o nella cartella di destinazione.

**Nota**: per ottenere una perfetta sincronia dei dati dal punto 3 in poi sarà necessario **porre in manutenzione** lo store “vecchio” così da evitare la perdita di registrazioni / ordini, per il tempo necessario a concludere le operazioni dei restanti punti qui elencati.

Se nel “vecchio” store sono (stati installati e sono) presenti moduli che hanno aggiunto voci alle tabelle di categoria, articoli ecc. detti moduli (aggiornati all’attuale versione) dovranno essere installati anche nella nuova versione PRIMA del trasferimento dei dati stessi così che i due database dovranno avere lo stesso numero di campi presenti e non si otterranno errori.

*Per aggiornare la sola versione USA la procedura può essere differente e si rimanda alla documentazione in inglese per quella distribuzione.

La procedura indicata NON è comunque valida per aggiornamenti fra versioni linguistiche diverse.

Se si sta aggiornando da una versione 1.5, la procedura è terminata. Se invece si sta effettuando l’aggiornamento da una 1.3.x a una 1.5.x, è necessario effettuare un’ulteriore operazione che consiste nell’esecuzione di un file (bugfix) contenente delle query sql per l’allineamento delle zone tra le due serie di versione.

Istruzioni e files per questa operazione si trovano nel pacchetto della distribuzione ufficiale in download su sourceforge. In alternativa i soli files in questione e relateive istruzioni, si trovano, sempre su sourceforge, in un archivio zip separato, al seguente indirizzo: http://sourceforge.net/projects/zencart-italia/files/Zen%20Cart%201.5.x/x_aggiornamento-da-13x.zip/download

Esistono due diverse modalità di esecuzione del bugfix, a seconda del fatto che sia avvenuto almeno una nuova registrazione utente in seguito all’aggiornamento dal 1.3.x a 1.5.x oppure no.

Se dopo aver effettuato l’aggiornamento non si è ancora realizzata una nuova registrazione cliente
allora sarà possibile eseguire il bugfix A, altrimenti si dovrà procedere ed eseguire il bugfix B

Istruzioni per come procedere per l’aggiornamento da 1.3.x a 1.5.x:

bugfix A – da Strumenti > Installa patch SQL > eseguire la query “bugfix_A.sql”
bugfix B:

– Recuperare ID Cliente dell’ultimo (cliente) registrato nel vecchio negozio 1,3,xx.

3 possibili metodi per recuperare l’ID:

1) se ancora presente ed accessibile, procedere nel pannello di amministrazione della vecchia
versione e da Clienti > Clienti prendere nota dell’ultimo ID Cliente.

2) aprire il file .sql usato per importare i dati dalla vecchia versione alla nuova e prendere nota
dell’ultimo ID Cliente (il numero più alto) della tabella address_book nel campo customers_id.

3) accedere al pannello di amministrazione della nuova versione 1.5.x e in Clienti > Clienti
recuperare l’ ID Cliente dell’ultimo registrato nella vecchia versione andando a verificare che la
data presente nel campo Account Creato sia precedente alla messa online del nuovo sito.

Una volta recuperato l’ID dell’ultimo cliente registratosi nel vecchio negozio

– Aprire in modifica il file bugfix_B.sql ed inserire tale valore al posto di

ID_ULTIMO_CLIENTE_SITO_VECCHIO

Ad esempio se l’ultimo id cliente è il 1345, la query cambierà da
update address_book ab set ab.entry_zone_id = (select zc.id_nuovo from zones_confronto zc where
ab.entry_zone_id = zc.id_vecchio and ab.customers_id <= ID_ULTIMO_CLIENTE_SITO_VECCHIO and
ab.entry_zone_id != 0 and ab.entry_country_id = 105);
a
update address_book ab set ab.entry_zone_id = (select zc.id_nuovo from zones_confronto zc where
ab.entry_zone_id = zc.id_vecchio and ab.customers_id <= 1345 and ab.entry_zone_id != 0 and
ab.entry_country_id = 105);

– Salvare il file

– da Strumenti > Installa patch SQL > eseguire la query “bugfix_B.sql”

Was this article helpful?

Related Articles

Vuoi inserire un commento?

Devi aver fatto l'accesso per inserire un commento