WordPress: "Si è verificato un errore critico su questo sito web" - Guida completa alla risoluzione

Web Design, WordPress
copertina guida come risolvere errore critico wordpress

Se ti è comparso il messaggio "Si è verificato un errore critico su questo sito web", probabilmente il tuo sito WordPress è bloccato o non accessibile.

Questo tipo di errore può derivare da diversi fattori, come conflitti tra plugin, problemi con il tema attivo, errori PHP o persino un database corrotto.

In questa guida, ti mostrerò in dettaglio le cause più comuni di questo problema e ti fornirò le migliori soluzioni per risolvere l'errore critico in WordPress.

Pronto? VAMOS!

Disclaimer

Le soluzioni descritte in questa guida richiedono modifiche a file di sistema, database e impostazioni di WordPress.

Se non hai esperienza tecnica con la gestione di file FTP, la modifica di wp-config.php o la riparazione di un database, è consigliabile procedere con estrema cautela.

Un'errata configurazione potrebbe peggiorare il problema, rendendo il sito completamente inaccessibile.

Se non sei sicuro di come procedere o vuoi un aiuto professionale, posso fornirti assistenza tecnica specializzata su WordPress, aiutandoti a risolvere il problema senza rischi per il tuo sito.

Cosa significa "Si è verificato un errore critico su questo sito web"?

Il messaggio "Si è verificato un errore critico su questo sito web" in WordPress indica un malfunzionamento grave, quasi sempre un Fatal error, che impedisce il normale caricamento del sito.

Questo errore, noto anche come "WordPress critical error", può derivare da diversi problemi, tra cui conflitti tra plugin e temi, errori nel codice PHP o problemi con il database.

Quando WordPress rileva un errore critico, la schermata del sito potrebbe diventare completamente bianca, creando l'effetto cosiddetto White Screen of Death (abbreviato in inglese WSOD) o mostrare un messaggio di questo tipo:

Si è verificato un errore critico sul tuo sito web. Scopri di più riguardo la risoluzione dei problemi in WordPress.

wordpress si e verificato un errore critico sul tuo sito web

Oppure, se il tuo WordPress è stato installato in lingua inglese: There has been a critical error on your website. Please check your site admin email inbox for instructions.

wordpress there has been a critical error on your website

Per evitare interruzioni prolungate, è importante comprendere le cause dell'errore e sapere come intervenire per ripristinare il sito.

Se sei loggato come Amministratore in WordPress, ti sarà comunicato nella stessa schermata il dettaglio dell'errore, come puoi vedere ad esempio in questo specifico caso di Fatal error dovuto da Elementor Pro:

errore critico elementor pro

Ecco alcuni degli errori critici più comuni che potresti veder comparire:

  • Fatal error: Allowed memory size of 12345678 bytes exhausted = Errore fatale: Dimensione della memoria consentita di 12345678 byte esaurita
  • Fatal error: Maximum execution time of 30 seconds exceeded = Errore fatale: Tempo massimo di esecuzione di 30 secondi superato
  • Fatal error: Call to undefined function wp_foo() = Errore fatale: Chiamata a funzione non definita wp_foo()
  • Fatal error: Class 'WP_Widget' not found = Errore fatale: Classe 'WP_Widget' non trovata
  • Fatal error: Cannot redeclare function foo() = Errore fatale: Impossibile ridefinire la funzione foo()
  • Fatal error: Uncaught Error: Call to a member function get() on null = Errore fatale: Errore non gestito: Chiamata a un metodo get() su null
  • Fatal error: Uncaught TypeError: Argument 1 passed to foo() must be of the type array, string given = Errore fatale: TypeError non gestito: L'argomento 1 passato a foo() deve essere del tipo array, stringa fornita
  • Fatal error: require_once(): Failed opening required 'wp-blog-header.php' = Errore fatale: require_once(): Apertura fallita del file richiesto 'wp-blog-header.php'
  • Fatal error: Out of memory (allocated 12345678) (tried to allocate 1234567 bytes) = Errore fatale: Memoria esaurita (allocati 12345678) (tentato di allocare 1234567 byte)
  • Fatal error: Uncaught Exception: Database query failed = Errore fatale: Eccezione non gestita: Query al database fallita

Sempre se sei Amministratore del sito, e la tua email è impostata come email del sito web, allora dovresti ricevere una notifica via email dell'errore che si è appena verificato.

wordpress notifica email errore fatale link recovery mode

Come vedi, tale email contiene tutta una serie di informazioni utili e possibilità di risolvere, come l'accesso in modalità di ricovero, la cosiddetta recovery mode.

Perché appare questo errore?

Le cause di un "errore critico WordPress" possono essere diverse e spesso dipendono da aggiornamenti recenti, incompatibilità software o problemi di configurazione.

Ecco alcune delle ragioni più comuni:

  • Problemi di compatibilità tra plugin e temi: Alcuni aggiornamenti di plugin o temi possono entrare in conflitto con la versione di WordPress installata, causando l'impossibilità di caricare il sito.
  • Errori nel codice PHP: Se un tema o un plugin contiene errori di programmazione, WordPress potrebbe non essere in grado di eseguire correttamente lo script, generando un errore critico.
  • Limiti di memoria PHP superati: Se un sito utilizza troppe risorse, potrebbe superare il limite di memoria assegnato nel server, causando un arresto del processo.
  • File di WordPress corrotti: L'errore può derivare da file core danneggiati a causa di un aggiornamento fallito o di un attacco informatico.
  • Problemi con il database: Se il database è corrotto o non accessibile, WordPress non può recuperare le informazioni necessarie per caricare il sito.
  • Configurazioni errate del server: Alcuni errori nei file di configurazione del server (come .htaccess o php.ini) possono impedire il corretto funzionamento di WordPress.

Individuare la causa specifica del "errore critico sito non accessibile" è il primo passo per risolvere il problema e ripristinare il normale funzionamento del sito.

Cause principali dell'errore critico WordPress

Un errore critico in WordPress può essere causato da diversi fattori, tra cui problemi legati a plugin e temi, errori nel database, conflitti dovuti agli aggiornamenti o configurazioni errate.

Conflitti con plugin o temi

I plugin e i temi di WordPress possono entrare in conflitto tra loro o con il core di WordPress, causando un errore critico.

Alcune delle situazioni più comuni includono:

  • Errore critico plugin WordPress: Un plugin mal codificato o incompatibile con la versione attuale di WordPress può impedire il corretto funzionamento del sito.
  • Tema WordPress danneggiato: Se il tema attivo contiene errori o non è più compatibile con la versione aggiornata di WordPress, può causare il blocco del sito.
  • Problemi dopo aggiornamento plugin: Gli aggiornamenti di plugin possono introdurre nuove funzionalità o modifiche al codice che risultano incompatibili con il sito.

Errore PHP o versione obsoleta

WordPress utilizza il linguaggio PHP per il suo funzionamento, quindi eventuali errori PHP in WordPress possono causare un errore critico.

Alcuni problemi comuni includono:

  • Versione PHP incompatibile: Se il sito utilizza una versione di PHP non supportata, alcuni script potrebbero non funzionare correttamente.
  • WordPress non supporta la versione PHP: Alcuni plugin o temi richiedono una versione minima di PHP per funzionare correttamente.
  • Errori nel codice PHP: Un errore di sintassi o una funzione deprecata può causare il blocco del sito.

Problemi con il file wp-config.php

Il file wp-config.php contiene le informazioni di configurazione di WordPress, inclusi i dettagli della connessione al database.

Se questo file è corrotto o modificato in modo errato, si possono verificare errori critici.

Alcuni problemi comuni includono:

  • Errore wp-config.php: Un errore nella sintassi del file può impedire il corretto avvio di WordPress.
  • File di configurazione WordPress: Modifiche errate a questo file possono causare il malfunzionamento del sito.
  • Debug WordPress: Abilitare la modalità debug può aiutare a identificare eventuali errori critici.

Database corrotto o connessione fallita

Se WordPress non riesce a connettersi al database, il sito non può recuperare i contenuti e visualizzerà un errore critico.

Alcune delle cause principali includono:

  • Errore database WordPress: Il database può danneggiarsi a causa di aggiornamenti interrotti o problemi con il server.
  • Connessione database fallita: Se le credenziali di accesso al database nel file wp-config.php sono errate, WordPress non sarà in grado di stabilire una connessione.
  • "Error establishing a database connection": Questo messaggio indica un problema nella comunicazione tra WordPress e il database.

Memoria PHP esaurita

Un altro motivo frequente per cui si verifica un errore critico è il superamento del limite di memoria PHP assegnato al sito.

wordpress memoria esaurita fatal error

Questo può accadere quando WordPress richiede più risorse di quelle disponibili.

Le cause principali sono:

  • Limite memoria WordPress: Se il sito supera il limite di memoria PHP impostato, il server potrebbe bloccare l'esecuzione degli script.
  • PHP memory limit exceeded: Alcuni plugin o temi possono richiedere più memoria rispetto a quella disponibile.
  • Aumento memoria PHP: È possibile aumentare il limite di memoria modificando il file wp-config.php o il file php.ini del server.

Errore Max Execution Time

Un altro errore comune in WordPress è il superamento del Max Execution Time, ovvero il tempo massimo consentito per l'esecuzione di uno script PHP.

Quando uno script impiega troppo tempo per completarsi, il server interrompe l'operazione per evitare sovraccarichi.

wordpress max execution time errore critico

Le cause principali sono:

  • Script troppo pesanti: Alcuni plugin o temi eseguono operazioni complesse che superano il tempo di esecuzione consentito.
  • Limite Max Execution Time troppo basso: Alcuni hosting impostano valori predefiniti molto restrittivi.
  • Aggiornamenti o importazioni di dati: L'aggiornamento di WordPress, plugin o temi, o l'importazione di file di grandi dimensioni possono richiedere più tempo del previsto.

Per risolvere il problema, è possibile aumentare il limite di esecuzione modificando il file php.ini o .htaccess:

  • Modifica del file php.ini (se hai accesso):
max_execution_time = 300;
  • Modifica del file .htaccess:
php_value max_execution_time 300

Se il problema persiste, potrebbe essere necessario contattare il proprio provider di hosting per aumentare ulteriormente il limite o ottimizzare gli script problematici.

Come risolvere l'errore critico in WordPress?

Quando un sito WordPress si blocca a causa di un errore critico, è importante intervenire tempestivamente per ripristinare la normale funzionalità.

Esistono diverse soluzioni per risolvere l'errore critico in WordPress, a seconda della causa del problema.

Ecco alcuni passaggi efficaci per correggere il malfunzionamento e rimettere online il sito.

Entrare in modalità di ricovero (recovery mode)

Come detto in precedenza, se sei Amministratore del sito web, WordPress ti invia una notifica dell'errore che si è generato e nella stessa email trovi un link per entrare in WordPress in modalità di ricovero.

recovery mode wordpress

Una volta dentro la Bacheca, WordPress ti notifica eventuali problemi ed errori critici generati da plugin o temi.

recovery mode wordpress dashboard

A questo punto ti basterà recarti nella pagina dei plugins per intercettare gli eventuali plugins problematici e disattivarli, in attesa di risolvere l'errore (aggiornando il plugin) o trovando un plugin alternativo.

errore plugin wordpress

Attivare la modalità debug di WordPress

La modalità debug di WordPress permette di individuare errori critici visualizzando messaggi di errore dettagliati.

Per attivarla, è necessario modificare il file wp-config.php:

  1. Accedi al server tramite FTP o File Manager del tuo hosting.
  2. Apri il file wp-config.php.
  3. Aggiungi o modifica le seguenti righe:
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);

Una volta attivata la WordPress debug mode, gli errori verranno registrati nel file wp-content/debug.log, permettendoti di individuare la causa del problema.

Disattivare plugin e temi via FTP

Uno dei motivi più comuni per cui si verifica un errore critico in WordPress è un conflitto tra plugin o temi.

Se non riesci ad accedere alla dashboard di WordPress, puoi disattivare i plugin tramite FTP:

  1. Accedi al tuo server tramite FTP.
  2. Vai nella cartella wp-content/plugins/.
  3. Rinomina la cartella di ogni plugin (es. plugin-name_disabled) per disattivarli temporaneamente.
  4. Se il sito torna online, rinomina le cartelle una per una per identificare il plugin responsabile del conflitto.

Se il problema persiste, potresti dover disattivare il tema WordPress.

Per farlo:

  1. Accedi a wp-content/themes/ e rinomina la cartella del tema attivo.
  2. WordPress utilizzerà automaticamente un tema predefinito, come Twenty Twenty-Four.

Verificare e aggiornare PHP

Un'altra causa frequente di errori critici è l'utilizzo di una versione PHP non supportata da WordPress.

Per verificare e aggiornare la versione PHP:

  1. Accedi al pannello di controllo del tuo hosting (es. cPanel o Plesk).
  2. Cerca l'opzione Gestione PHP o Versione PHP.
  3. Controlla quale versione è attiva e aggiorna a una versione supportata da WordPress (attualmente 7.4 o superiore).

Se il tuo sito utilizza una versione obsoleta, alcuni plugin o temi potrebbero non funzionare correttamente, causando un errore critico.

Riparare il database WordPress

Un database corrotto può impedire il corretto funzionamento del sito.

Per eseguire la riparazione del database di WordPress, segui questi passaggi:

  1. Apri il file wp-config.php.
  2. Aggiungi la seguente riga di codice:
define('WP_ALLOW_REPAIR', true);
  1. Salva il file e visita tuosito.com/wp-admin/maint/repair.php.
  2. Clicca su "Repair Database" per avviare la riparazione.

Una volta completato il processo, rimuovi la riga di codice aggiunta in wp-config.php per motivi di sicurezza.

Aumentare il limite di memoria PHP

Se il sito mostra errori di memoria esaurita, potrebbe essere necessario aumentare il limite di memoria PHP.

Per farlo:

  1. Apri il file wp-config.php.
  2. Aggiungi la seguente riga:
define('WP_MEMORY_LIMIT', '256M');
  1. Se il problema persiste, modifica il file php.ini (se hai accesso al server) aggiungendo:
memory_limit = 256M;

Infine, se il tuo hosting ha delle restrizioni, potresti dover contattare l'assistenza per aumentare il limite di memoria disponibile.

Prevenire futuri errori critici in WordPress

Per evitare problemi che possano causare un errore critico in WordPress, è fondamentale adottare pratiche di manutenzione e sicurezza.

Implementare strategie di prevenzione aiuta a mantenere il sito stabile e funzionante nel tempo.

Di seguito, alcuni metodi essenziali per prevenire errori WordPress.

Backup regolari e sistemi di ripristino

Effettuare regolarmente un backup di WordPress è una delle strategie più efficaci per proteggere il sito da errori critici e perdite di dati.

Esistono diverse opzioni per eseguire backup:

  • Plugin di backup WordPress: Strumenti come UpdraftPlus, BackupBuddy e WPVivid consentono di programmare backup automatici.
  • Backup manuale: È possibile scaricare i file del sito via FTP e esportare il database da phpMyAdmin.
  • Backup off-site: Salvare copie dei dati su cloud (Google Drive, Dropbox) garantisce una maggiore sicurezza.

Per ripristinare WordPress da backup, basta caricare i file e il database salvati, assicurandosi di sovrascrivere i dati esistenti.

Alcuni plugin offrono anche funzioni di ripristino automatico in pochi clic; tra questi io sono fan di Duplicator, che ti permette di creare una copia installabile del tuo sito web, utilissima anche per trasferimenti e test.

Monitoraggio e manutenzione periodica

Un sito WordPress ben mantenuto è meno soggetto a errori critici.

Ecco alcune buone pratiche di monitoraggio e manutenzione WordPress:

  • Monitoraggio del sito: Strumenti come Jetpack Monitor, UptimeRobot e Google Search Console aiutano a rilevare problemi di prestazioni.
  • Aggiornamenti automatici di WordPress: È consigliabile attivare gli aggiornamenti automatici per il core di WordPress, ma monitorare manualmente quelli di plugin e temi per evitare conflitti.
  • Testare i plugin prima di aggiornare: Prima di aggiornare un plugin, è utile testarlo in un ambiente di staging per verificare eventuali incompatibilità.

Adottare un sistema di notifica

Esistono vari tools per monitorare il tuo sito web ed ottenere immediata notifica in caso di errore critico.

Tra questi tools posso consigliarti Fatal Error Notify, che a differenza del sistema standard di WordPress, ti notifica anche se una sola pagina genera un errore (e non il sito intero), oltre a permetterti di scegliere il livello di errore che può scatenare la notifica.

Riepilogo finale

Affrontare un errore critico in WordPress (Fatal Error) può sembrare complicato, ma con le giuste conoscenze e un approccio metodico è possibile individuare la causa e risolvere il problema in modo efficace.

Dalla disattivazione dei plugin all'aggiornamento di PHP, fino alla riparazione del database, abbiamo analizzato tutti i passaggi per ripristinare il sito.

Tuttavia, la prevenzione è il miglior metodo per evitare futuri malfunzionamenti: mantenere il sito aggiornato, fare backup regolari ed utilizzare sistemi di monitoraggio sono strategie essenziali per garantire la stabilità del tuo sito WordPress.

Se il problema persiste o preferisci l'intervento di un esperto, non esitare a contattarmi: sono un tecnico specializzato WordPress e posso offrirti assistenza personalizzata per risolvere qualsiasi errore critico in modo sicuro e veloce.

Condividi l'articolo

guest
0 Commenti
Inline Feedbacks
View all comments