La premessa
Due framework completamente diversi, ma estremamente versatili. Quando abbiamo cominciato la nostra avventura nel mondo dell’e-commerce, Magento è stato il nostro compagno d’avventura per molto tempo, poiché si prestava come soluzione ideale per le nostre esigenze e per la nostra prima esperienza nel settore.
Si tratta di un sito di vendita piscine seminterrate e relativi accessori, con un buon volume di affari che necessitava di integrarsi con con la holding aziendale con processi e software con struttura rigida, avevamo quindi necessità di una piattaforma personalizzabile in ogni sua parte.
Magento è risultato un’ottima macchina, ma dalle potenzialità non utilizzate e inespresse, con molte funzioni inutili per il nostro business e dalle risorse e costi non proprio irrisori. Il passaggio dalla versione 1.X alla versione 2.X è stato in qualche modo un passaggio traumatico, con un cambio sostanziale del framework, nessuna retro-compatibilità e con la necessità di riscrittura o riacquisto completo di tutti plug-in e moduli e per di più il cambio strutturale ha portato anche un aumento del costo di sviluppo e quindi anche un aumento dei costi dei plug-in. Questo grosso cambiamento ci ha portato alla decisione di cambiare piattaforma, pur consapevoli del fatto che cambiare la piattaforma di un negozio è spesso un suicidio al 99%.
L’idea di fondo e determinante era la possibilità di avere un core più leggero elastico e spoglio di tutte quelle funzioni non utili. Il primo candidato – e poi quello definitivo – fu Opencart un framework opensource scritto con struttura m.c.v. che ci garantiva così una facilità e rapidità di aggiornamento e modifica ottimali. Alla fine, almeno per me, più che avere le ultime tecnologie, ha più senso avere la migliore soluzione a lungo termine per abbattere i tempi di costi e sviluppo.
Il database e la migrazione dei dati
Il primo muro enorme è lo spostamento dei dati dal vecchio database al novo. Questi due framework hanno una struttura dei dati completamente differente e questo è uno scalino non facile da digerire. In questo caso abbiamo creato un tool di migrazione che estraeva i dati dal vecchio database, li rielaborava e li spostava sul nuovo database. Per evitare errori di sorta abbiamo usato una mappa del database inserendo nel nuovo framework prodotti, un ordine e un cliente nuovi. Questo ci è stato utile per capire come gestire i dati e capire le interconnessioni dei dati per garantire un passaggio indolore. Se masticate MySQL e Query la cosa è molto semplice. Dopo aver completato questa parte, il grosso del lavoro è stato fatto. In questa parte potete anche migliorare dei prodotti ed eventualmente raggrupparli per diminuire il numero di url totali come in questo esempio di sito e i suoi robot per piscina raggruppati.
Lo sviluppo del nuovo front-end
Dato che il sito deve avere una nuova faccia abbiamo riscritto completamente lo stesso e qui Opencart ha un grande vantaggio, potendo usare il linguaggio con estensione .twig per la gestione dei template e rendendo lo sviluppo del front-end un’operazione facile anche per un programmatore alle prime armi.
Le immagini
Questi due framework hanno una gestione delle foto e della cache differente e salvano le foto all’interno del server in modi differenti. Abbiamo optato per creare una cartella contenente le vecchie foto e lasciare sul database il percorso diretto alla foto originale e mediante uno script abbiamo riscritto l’inizio del percorso per adattarlo alla nuova locazione all’interno del server.
Gli url genitore
La parte più imponente del lavoro, a mio avviso. Il vecchio sito aveva una determinata struttura degli url delle pagine prodotti e categorie. C’è stata una grande cura nel ricreare la stessa struttura negli url per evitare perdite di link o errori di indicizzazioni. Questo lavoro è stato fatto sia sullo script che crea gli url seo friendly e lo spostamento di interi url tramite .htaccess. Se questa parte è stata fatta correttamente e senza sbagli, si eviteranno grossi cali di organico o danni molto gravi al flusso di visite sul nostro nuovo e-Commerce.
In Conclusione
Magento è meglio di Opencart? Assolutamente sì, arrivati a questo punto mi direte ma sei matto allora perché hai fatto la migrazione? Perché Magento non è la soluzione ideale per il nostro shop o meglio non è lo strumento adatto per le mie esigenze. Ma forse in un futuro si potrà passare di nuovo a questa piattaforma. Tutto dipende dal vantaggio economico e se alla fine effettivamente serve. Usare una piattaforma diffusa a livello globale può essere un grande vantaggio sia sul lato plug-in che assistenza, ma ha un grosso problema di fondo, deve essere elastico e per tutte le esigenze. Questo ‘tutte le esigenze’ richiede potenza server e struttura scalabile, che può provocare rallentamenti, falle e poca sicurezza. Dato l’alto numero di installazioni questo framework è appetibile da tutti i malintenzionati. Mi sto spostando dal messaggio che vi voglio dare e per questo mi scuso ma era fondamentale. Ho usato Magento per anni e per me rimane e la piattaforma numero uno per l’e-Commerce come WordPress per l’ambito blog. Ma tutto dipende dalle vostre competenze e da come utilizzate questi framework, sono dei potenti software ma danno il meglio di sé solo se utilizzati nel modo corretto.