PrestaShop su PHP 8.
Clienti e ordini al loro posto.
Portiamo i negozi PrestaShop 1.6 e 1.7 a PrestaShop 8 o 9, con il tema rifatto, i moduli verificati uno per uno e catalogo, clienti e ordini migrati senza perdite.
Per chi ha un negozio PrestaShop bloccato su PHP 7.1 o 7.4, con moduli di pagamento che non si aggiornano più e override del core accumulati negli anni.
Dal ramo che hai.
Al ramo supportato.
PrestaShop 1.6 funziona solo fino a PHP 7.1 e non arriva a PHP 8 in nessuna configurazione supportata. Si passa a una nuova versione principale, con l’aggiornamento sul posto in due tappe o con una nuova installazione e la migrazione dei dati.
- 01PrestaShop 1.6.1PHP 5.2 – 7.1
Ramo non più mantenuto, con tema e moduli di pagamento da rifare.
- 02PrestaShop 1.7.8PHP 7.1 – 7.4
Tappa obbligata dell’aggiornamento sul posto con il modulo ufficiale.
- 03PrestaShop 8.2PHP 7.2 – 8.1
Destinazione possibile se mancano moduli per la 9, con PHP 8.1 da proteggere.
- 04PrestaShop 9.1PHP 8.1 – 8.5
Ramo corrente, con PHP 8.5 come versione consigliata.
Versioni e PHP.
Ramo per ramo.
Ogni ramo di PrestaShop supporta un intervallo preciso di versioni di PHP. La scelta della destinazione dipende soprattutto da qui e dai moduli disponibili.
Fonti: Requisiti di sistema di PrestaShop 9 · Requisiti di sistema di PrestaShop 1.7 · PrestaShop 8.2 in supporto esteso. La matrice dei rami di PHP con le distribuzioni Linux è nella pagina Versioni PHP.
Cosa blocca l’upgrade.
E come lo sblocchiamo.
Nel passaggio dalla 1.6 cambiano il sistema dei temi, l’interfaccia dei pagamenti e parte delle API usate dai moduli.
Il tema della 1.6 non si porta
Dalla 1.7 PrestaShop usa un sistema di temi diverso, e i temi scritti per la 1.6 non sono compatibili. Scegliamo un tema per la versione di destinazione o ne sviluppiamo uno come tema figlio, ricostruendo solo le personalizzazioni che servono.
Moduli di pagamento
Dalla 1.7 i metodi di pagamento si presentano al cliente con un’interfaccia diversa, quindi i moduli della 1.6 non funzionano. Installiamo la versione attuale del modulo ufficiale del servizio e la proviamo con ogni esito.
Moduli su misura e override
PrestaShop 8 usa Symfony 4.4 e ha rimosso metodi molto usati come Tools::jsonEncode() e Tools::jsonDecode(). Adattiamo i moduli su misura e, dove possibile, sostituiamo gli override del core con gli hook.
Moduli acquistati senza versione nuova
Molti produttori offrono una versione per PrestaShop 8 o 9, a volte come prodotto separato. Lo verifichiamo per ogni modulo prima di scegliere la versione di destinazione.
Dati, password e indirizzi
Catalogo, clienti, ordini e regole di prezzo si trasferiscono conservando gli identificativi. Riportiamo la chiave delle password dei clienti e i reindirizzamenti permanenti per gli indirizzi cambiati, così clienti e motori di ricerca ritrovano il negozio.
Il nostro intervento.
Passo dopo passo.
Se la migrazione richiede tempo, nel frattempo teniamo protetto il PHP in uso con il backport delle patch di sicurezza.
- 01INVENTARIO
Inventario e scelta della strada
Su una copia elenchiamo moduli, override e integrazioni, e verifichiamo quali esistono per PrestaShop 8 e 9. Da qui scegliamo tra aggiornamento sul posto e nuova installazione con migrazione dei dati.
- 02STAGING
Migrazione provata più volte
Ripetiamo la migrazione sull’ambiente di prova finché catalogo, clienti, ordini e prezzi coincidono. Il negozio si prova come lo usano un cliente e chi lavora gli ordini.
- 03UPGRADE
Passaggio con rollback
Il giorno del passaggio trasferiamo gli ultimi ordini durante una breve manutenzione e rilasciamo con Ansible. Il vecchio negozio resta disponibile per tornare indietro e come riferimento.
- 04RILASCIO
Backport come ponte
Se il progetto richiede mesi, il backport delle patch di sicurezza protegge il PHP del negozio attuale. Lo stesso vale per PHP 8.1 quando la destinazione è PrestaShop 8.
Per approfondire.
Da PrestaShop 1.6 a PrestaShop 8: temi, moduli e migrazione dei dati
Perché PrestaShop 1.6 non arriva a PHP 8, con quali versioni di PHP funzionano PrestaShop 8 e 9, aggiornamento sul posto o nuova installazione, cosa succede a tema e moduli e come migrare clienti, ordini e catalogo senza perdere dati e posizionamento.
Leggi l’approfondimentoE-commerce su PHP legacy: come migrare senza perdere ordini, clienti e posizionamento
Un metodo per migrare un negozio online da un PHP fuori supporto senza perdere lo storico degli ordini, gli account e le password dei clienti e le posizioni nei motori di ricerca: inventario, migrazioni di prova, congelamento breve, redirect 301 e monitoraggio.
Leggi l’approfondimentoMigrare un CMS a PHP 8: perché si aggiorna sempre tutto lo stack
Perché portare un CMS su PHP 8 significa aggiornare core, estensioni, tema e codice su misura, quali sono i requisiti di WordPress, WooCommerce, PrestaShop, Joomla e Drupal, in che ordine procedere e come proteggere la produzione durante il lavoro.
Leggi l’approfondimentoPrima di iniziare.
Le domande che ci fanno più spesso su PrestaShop e PHP.
Posso portare PrestaShop 1.6 su PHP 8 senza cambiare versione?
No. Secondo la documentazione ufficiale PrestaShop 1.6.1 funziona con PHP fino alla 7.1, fuori supporto da dicembre 2019. Per arrivare a PHP 8 serve PrestaShop 8 o 9.
Meglio PrestaShop 8 o PrestaShop 9?
PrestaShop 8 si ferma a PHP 8.1, fuori supporto dalla fine del 2025, e la serie 8.2 riceve solo correzioni di sicurezza. PrestaShop 9.1 copre PHP dalla 8.1 alla 8.5. Se i moduli indispensabili esistono per la 9 puntiamo lì, altrimenti la 8 è una tappa da accompagnare con il backport e con un piano per il passo successivo.
Aggiornamento sul posto o nuova installazione?
L’aggiornamento con il modulo ufficiale conserva database e indirizzi e funziona bene sui negozi poco personalizzati, passando prima dalla 1.7. Per un negozio con anni di modifiche la nuova installazione richiede più lavoro sui dati e consegna un sistema pulito, più facile da aggiornare in futuro.
I clienti dovranno reimpostare la password?
No, se la migrazione è fatta bene. Riportiamo nella nuova configurazione la chiave usata per le password, e i clienti accedono con le credenziali di sempre.
Aggiorniamo
il tuo negozio.
Indicaci versione della piattaforma, versione di PHP e sistema operativo. Ti risponderemo con una prima valutazione del percorso di upgrade e di cosa serve per arrivarci.
Richiedi una valutazioneLunedì – venerdì · 09:30 – 19:30
+39 340 985 4556 ↗