Disattivare modulo PrestaShop: come trovare il modulo che blocca il negozio
Disattivare un modulo PrestaShop è il modo più sicuro per fermare un modulo che rompe il negozio. Il modulo smette di funzionare, ma impostazioni e dati restano, quindi puoi riattivarlo con un clic. Il colpevole lo trovi nel log degli errori e nell'ordine degli ultimi aggiornamenti. La disinstallazione viene per ultima, perché rimuove i dati del modulo.
Autore: Il team TellMyShop. Una guida per i titolari di negozi PrestaShop: la causa, la correzione a mano e lo stesso lavoro in una conversazione in chat.
Ultimo aggiornamento: · 6 min di lettura
Che aspetto ha un modulo che rompe il negozio?
Di solito comincia allo stesso modo. Ieri qualcosa funzionava, oggi no, e nel mezzo qualcuno ha aggiornato qualcosa. Giovedì, ore 14:15. Un cliente manda uno screenshot di una pagina di prodotto: le recensioni compaiono due volte, una sotto l'altra, e le stelle accanto al nome sono sparite. Stamattina hai installato un nuovo modulo recensioni perché quello vecchio non mandava le richieste di recensione. Nessuno ha disattivato quello vecchio.
I sintomi di un conflitto tra moduli si riconoscono. La pagina si carica, ma un elemento non risponde. Una pagina di prodotto mostra un blocco due volte. Il carrello calcola male o non mostra un corriere. Nel caso peggiore la pagina finisce in un errore 500. In quel caso parti dall'articolo sull'errore 500 in PrestaShop, perché lì conta ogni minuto.
Disattivare, disinstallare o eliminare?
Quando cerchi la causa, disattiva sempre. Le altre due operazioni non si possono annullare.
| Operazione | Cosa succede | Dati del modulo | Come tornare indietro |
|---|---|---|---|
| Disattivare | il modulo smette di funzionare nel negozio | conservati | un clic su «Attiva» |
| Disinstallare | PrestaShop rimuove impostazioni, contenuti e tabelle del modulo | rimossi | solo da un backup del database |
| Eliminare | vengono rimossi anche i file del modulo dal server | rimossi | reinstallare e configurare da zero |
| Rinominare la cartella via FTP | salto d'emergenza del modulo quando il pannello non funziona | conservati | ripristinare il nome |
Nel pannello disattivi un modulo in Moduli > Gestione moduli, nel menu accanto al pulsante Configura. Con i moduli di pagamento e di spedizione ricorda che i clienti perdono subito quel metodo.
Come trovare il modulo che rompe il negozio
Parti dal messaggio di errore, e solo dopo disattiva i moduli uno alla volta.
- Annota cosa è cambiato. Quali moduli hai aggiornato, se è cambiata la versione di PHP, se qualcuno ha modificato il tema. L'ultima modifica è il sospettato numero uno.
- Leggi il log. Parametri avanzati > Log mostra gli errori con una data. Il messaggio spesso indica un file nella cartella
modules/nome_modulo. Questa schermata è descritta nella documentazione sui log. - Disattiva il modulo più sospetto. Uno solo. Controlla il negozio in una finestra privata del browser.
- Se ancora non funziona, riattivalo e disattiva il successivo. Disattivare più moduli insieme rende difficile capire quale fosse il colpevole.
- Controlla gli override. Quando due moduli fanno l'override della stessa classe, ognuno funziona da solo, ma non insieme. In Parametri avanzati > Prestazioni puoi disattivare per poco tutti gli override e vedere se il problema sparisce. Cosa sono gli override e perché creano problemi lo spiega la documentazione per sviluppatori.
- Segnala il bug allo sviluppatore. Manda il testo del messaggio, la versione di PrestaShop, quella di PHP e quella del modulo. Senza questi dati lo sviluppatore va a indovinare.
Knowband ha raccolto le cause tipiche dei conflitti dopo un aggiornamento del negozio nella sua guida ai moduli. Chi gestisce un negozio racconta storie simili sul forum di PrestaShop (in polacco).
Come trovare e disattivare il modulo difettoso in una sola conversazione
Descrivi il sintomo, e la tua chat (Claude o ChatGPT) con il modulo TellMyShop controlla quali moduli girano in quel punto della pagina, legge il log e indica il modulo più probabile. Mostra la disattivazione in un'anteprima e la esegue solo dopo la tua approvazione.
Tu: Le recensioni sono doppie nella pagina del prodotto da quando ho aggiunto un nuovo modulo recensioni. Controlla cosa viene mostrato lì e disattiva il vecchio modulo, ma non disinstallarlo.
La tua chat: Sotto la descrizione del prodotto sono agganciati due moduli recensioni: quello nuovo, installato oggi, e quello vecchio, attivo da due anni. Entrambi aggiungono lo stesso blocco, da qui le recensioni doppie. Il log non ha errori. La causa sono due moduli che fanno la stessa cosa.
Le recensioni raccolte dal vecchio modulo restano nel database. Il nuovo modulo di solito non le vede, perché tiene le recensioni in tabelle sue. Lo disattivo?
Tu: Sì.
La tua chat: Disattivato. Ricarica la pagina del prodotto in una finestra privata del browser. Se le stelle ancora non si vedono, controllo dove le mostra il nuovo modulo.
Anteprima della modifica:
versione precedente: Vecchio modulo recensioni: attivo
nuova versione: Vecchio modulo recensioni: disattivato
La lettura del log e dell'elenco dei moduli funziona nel gratuito TellMyShop Free, quindi hai la diagnosi senza comprare niente. Un esempio di richiesta del genere è messaggi di errore dopo l'aggiornamento di un modulo. La disattivazione vera e propria richiede TellMyShop Pro e l'interruttore Moduli. Dopo l'installazione è spento, e lo accendi nel pannello del modulo per 24 ore. Lo stesso approccio funziona quando si rompe il carrello, come descritto nel caso d'uso disattivare un modulo che rompe il carrello.
Una disattivazione di solito richiede da dieci secondi a meno di un minuto, perché PrestaShop ricostruisce la sua cache. Puoi annullarla dalla cronologia delle modifiche. La chat non disattiva il modulo TellMyShop, perché è così che parla con il tuo negozio. La disinstallazione è possibile, ma richiede di scrivere il nome esatto del modulo e non si può annullare, quindi la chat propone prima la disattivazione.
Quando disattivare non basta?
Se il problema resta dopo aver disattivato il modulo sospetto, la causa sta altrove. Le situazioni tipiche sono tre.
La prima è un override lasciato da un altro modulo, per esempio uno disinstallato con un errore. Un file nella cartella override continua a cambiare il funzionamento di PrestaShop, anche se il modulo non c'è più. Controllare e rimuovere un file del genere è un lavoro per uno sviluppatore.
La seconda è una modifica nel tema. Il modulo può avere una copia del suo template nel tema, ed è quella copia a rompersi, non il modulo. Controlla la cartella modules dentro la cartella del tema.
La terza è una modifica lato server. L'hosting, per esempio, può essere passato a una nuova versione di PHP la stessa notte in cui hai aggiornato i moduli. Allora il log degli errori indica più moduli insieme, non uno solo. Chiedi al tuo hosting cosa è cambiato sul server.
E se il modulo disattivato serviva?
Concorda una correzione con lo sviluppatore e fino ad allora lavora senza il modulo o con un sostituto. Quando lo sviluppatore pubblica una nuova versione, aggiorna il modulo, attivalo e controlla il punto che si rompeva. Il giorno dopo guarda di nuovo il log.
Se dopo una settimana di disattivazione il modulo si rivela inutile, puoi disinstallarlo. Come farlo senza sorprese lo spieghiamo nell'articolo sui moduli PrestaShop inutilizzati.
Domande e risposte
Che differenza c'è tra disattivare e disinstallare un modulo?
Un modulo disattivato smette di funzionare, ma le sue impostazioni, i contenuti e le tabelle nel database restano. Lo riattivi con un clic e torna tutto. La disinstallazione rimuove i dati del modulo: configurazione, contenuto dei banner, a volte tabelle intere. Senza un backup del database non si annulla, quindi quando cerchi il colpevole disattivi e basta.
Cos'è un conflitto tra moduli in PrestaShop?
Succede quando due moduli cambiano la stessa parte del negozio e si intralciano. Il più delle volte entrambi fanno l'override della stessa classe di PrestaShop, o si agganciano allo stesso elemento della pagina e caricano script in conflitto. Ognuno funziona da solo, ma insieme rompono il carrello o la pagina del prodotto. Aiuta disattivarne uno e parlare con gli sviluppatori.
È sicuro disattivare un modulo di pagamento?
I dati del modulo restano, ma i clienti perdono subito quel metodo di pagamento. Se è il tuo unico pagamento online, il negozio in pratica smette di vendere. Prima di disattivarlo, controlla che resti un altro metodo, e torna presto sulla questione. Lo stesso vale per i moduli di spedizione: il corriere sparisce dal carrello.
Come controllo quali moduli girano nella pagina del prodotto?
Nel pannello apri Aspetto > Posizioni e scegli un punto della pagina, per esempio il blocco sotto la descrizione del prodotto. L'elenco mostra i moduli agganciati lì, nell'ordine di visualizzazione. Se lì vedi due moduli che fanno la stessa cosa, per esempio due sistemi di recensioni, hai il primo candidato da disattivare.
Posso chiedere di disattivare un modulo in una conversazione?
Sì, in TellMyShop Pro, quando accendi l'interruttore Moduli. L'interruttore dura 24 ore e richiede un backup del database fatto lo stesso giorno. La chat mostra cosa cambierà, ti avvisa per i moduli di pagamento e di spedizione e aspetta la tua approvazione. La disattivazione puoi annullarla dalla cronologia delle modifiche. La chat non propone la disinstallazione come primo passo.
PrestaShop è un marchio registrato di PrestaShop SA. Claude è un marchio di Anthropic PBC. ChatGPT e OpenAI sono marchi di OpenAI. TellMyShop non è affiliato a queste aziende.