1. Home
  2.  
  3. Blog
  4.  
  5. Web developer
  6.  
  7. Modulo non compatibile con PHP 8 in PrestaShop – Come sistemarlo velocemente

Modulo non compatibile con PHP 8 in PrestaShop – Come sistemarlo velocemente

Modulo non compatibile con PHP 8 in PrestaShop
Getting your Trinity Audio player ready...


Con l’arrivo di PHP 8 e PHP 8.1 molti store PrestaShop (sia 1.7 che 8.x) hanno iniziato a mostrare errori improvvisi: pagine bianche, moduli che non si installano, funzioni che non rispondono o l’intero back office che si blocca.

Il motivo è quasi sempre lo stesso: un modulo non compatibile con PHP 8.

In questa guida ti spiego come identificare il modulo problematico, come ripristinare il funzionamento del sito e quali sono le soluzioni reali per sistemare la compatibilità.


🔍 Perché molti moduli non funzionano con PHP 8

PHP 8 ha introdotto modifiche importanti, e molti moduli più vecchi usano ancora:

  • funzioni deprecate
  • sintassi compatibile solo con PHP 5 / 7
  • variabili non tipizzate
  • metodi che ora generano errori fatali
  • codice non aggiornato dal 2019–2020

Il risultato è che basta anche un solo modulo non compatibile per:

  • bloccare il checkout
  • generare un errore 500
  • impedire la visualizzazione del back office
  • far sparire intere sezioni del sito

🔥 Sintomi tipici di un modulo non compatibile con PHP 8

  • Errore 500 durante la navigazione
  • Back Office non accessibile
  • Modulo che non si attiva
  • Carrello che si blocca
  • Checkout non funzionante
  • Messaggi come:
    Deprecated: Required parameter $x follows optional parameter $y
    Fatal error: Uncaught TypeError
    Call to undefined function each()

     

🛠 Come identificare il modulo non compatibile

1️⃣ Attiva la modalità debug

Vai in:
Advanced Parameters > Performance > Debug Mode

Ricarica la pagina → troverai l’errore esatto (php fatal error).

L’errore solitamente mostra:

  • la cartella del modulo (/modules/nomeModulo/…)
  • il file preciso
  • la riga da correggere

2️⃣ Disattiva il modulo dal database (se il BO non si apre)

Entra in phpMyAdmin:

Tabella:

ps_module

Trova il modulo → metti active = 0.

Ricarica il sito → se riparte, hai trovato il colpevole.


3️⃣ Controlla gli override del modulo

Alcuni moduli aggiungono override che rompono tutto in PHP 8.

Controlla:

  • /override/classes/…
  • /override/controllers/…

Se trovi file del modulo → rinominali (es. nome.php_OFF).


🧩 Come sistemare effettivamente il modulo (soluzioni reali)

🔧 1. Aggiorna il modulo all’ultima versione

Molti sviluppatori hanno rilasciato versioni compatibili con PHP 8.

Se il modulo è:

  • PayPal
  • Stripe
  • gestionali
  • corrieri
  • checkout

… l’update risolve il 90% dei casi.


🔧 2. Ripara manualmente gli errori più comuni

Se non esiste un aggiornamento, puoi sistemare il modulo modificando il codice.

Errori tipici e relative correzioni:

❌ Parametri opzionali prima di quelli obbligatori

function test($a = '', $b) {}

Deve diventare:

function test($a, $b) {}

❌ Funzioni rimosse in PHP 8

Esempi:

each()
get_magic_quotes_gpc()
create_function()

Devi sostituirle con alternative moderne.

❌ Tipizzazioni errate

Molti moduli usano:

return false;

 

In metodi che dovrebbero ritornare un array: questo ora genera errori.


🔧 3. Chiedi allo sviluppatore un aggiornamento

Se è un modulo premium o con supporto attivo → meglio non toccare il codice.


🔧 4. Reinstallalo (o installalo su PHP 7.4 e poi aggiorna)

Alcuni moduli meno recenti non si installano direttamente su PHP 8, ma funzionano se installati con PHP 7.4 e poi aggiornati.

Procedura:

  1. Porta temporaneamente il server a PHP 7.4
  2. Installa il modulo
  3. Torna a PHP 8.1
  4. Verifica il funzionamento

Funziona più spesso di quanto si creda.


🔧 5. Cambia modulo con uno alternativo compatibile

Se il modulo è abbandonato → è meglio sostituirlo.


🚑 Situazione critica? Sito bloccato? Checkout fermo?

Posso sistemare il modulo e ripristinare il sito in poche ore.

Cosa posso fare:

  • ✔ rendo il modulo compatibile con PHP 8
  • ✔ sistemo errori fatali, warning e deprecazioni
  • ✔ ripristino BO/checkout bloccati
  • ✔ effettuo test reali con pagamenti
  • ✔ assistenza in remoto, risposta in giornata

👉 Scrivimi su WhatsApp

Se ti è piaciuto questo articolo riguardo Modulo non compatibile con PHP 8 in PrestaShop – Come sistemarlo velocemente condividilo sui social:
Dal 2010 supportiamo le aziende nella pianificazione e nello sviluppo di strategie mirate per una presenza efficace e professionale sul web e sui social media. Ecco tutto quello che possiamo fare per la tua attività.

Articoli correlati