In un mondo perfetto, non avreste mai avuto un solo problema che richiedesse un debug. Ma nel mondo reale, quasi certamente vi imbatterete in un problema che richiederà uno sguardo sotto il cofano.

Per aiutarvi in questa ricerca, WordPress fornisce una propria modalità di debug integrata e in più potete anche trovare utili strumenti di terze parti che vi aiutano a fare il debug di WordPress.

In questo articolo, andremo a scavare nella modalità di debug integrata di WordPress e vi mostreremo come abilitarla. Vi illustreremo anche alcuni altri metodi per eseguire il debug di un sito WordPress.

Qui c’è tutto ciò di cui ci occuperemo:

Cosa Fa il Debug WP?

Il software core di WordPress è scritto in PHP, così come i plugin e i temi.

Se avete problemi con il vostro sito, la modalità di debug di WordPress può aiutarvi a scoprire cosa sta succedendo, mostrandovi tutti gli errori PHP, gli avvisi e le avvertenze.

Una volta abilitata la modalità di debug, vedrete messaggi come quello che segue ogni volta che riscontrerete un’anomalia (anche se questa non sta causando problemi immediati):

Esempio di errore WP_DEBUG su un sito WordPress
Esempio di errore WP_DEBUG su un sito WordPress

Potete quindi risolvere il problema o segnalarlo al vostro sviluppatore o allo sviluppatore del tema/plugin.

Cosa È il Debug Log di WordPress?

Quando abilitate la modalità di debug di WordPress, vedrete al momento sul vostro sito messaggi come quello riportato nell’esempio qui sopra, ma questi messaggi non verranno salvati da nessuna parte.

Se volete salvarli, potete anche abilitare il debug log di WordPress per salvare messaggi ed errori in un file sul vostro server.

Il debug log viene abilitato impostando la costante WP_DEBUG_LOG su true, così WordPress registrerà tutte le anomalie nel seguente file:

wp-content/debug.log

Ma potete anche specificare un percorso di file personalizzato, in modo da scrivere il log in un’altra posizione sul server.

Se volete salvare le registrazioni delle anomalie nel log ma non visualizzarle pubblicamente all’interno del codice HTML delle vostre pagine (come lo screenshot dell’esempio di sopra), dovrete utilizzare anche la costante WP_DEBUG_DISPLAY, in modo da mantenere attiva la modalità di debug ma non visualizzare i messaggi sul sito.

In genere, si deciderà di combinare WP_DEBUG_DISPLAY con WP_DEBUG_LOG.

Come attivare la modalità di debug di WordPress

Avete diverse soluzioni per attivare la modalità di debug di WordPress. Analizzeremo tre metodi:

Come attivare la modalità di debug WordPress in MyKinsta

Se ospitate il vostro sito WordPress su Kinsta, sappiate che abbiamo creato un semplice strumento che vi permette di abilitare la modalità di debug di WordPress senza bisogno di modificare il vostro file wp-config.php.

Questo strumento è comodissimo e vi permette di abilitare rapidamente la modalità di debug e visualizzare i messaggi sul vostro sito, ma non permette di controllare il debug log di WordPress o di decidere se visualizzare o meno i messaggi sulle pagine live. Se volete utilizzare solo il debug log, potreste preferire il metodo del plugin illustrato nella prossima sezione.

Per iniziare:

  • Aprite il cruscotto di MyKinsta.
  • Selezionate il sito in cui desiderate abilitare il debug dall’elenco dei vostri Siti.
  • Andate alla scheda Strumenti nel cruscotto del sito.
  • Fate clic su Abilita in Debug di WordPress.
Come attivare la modalità di debug di WordPress in MyKinsta
Come attivare la modalità di debug di WordPress in MyKinsta

Potete utilizzare lo strumento di debug sia in ambienti live che in ambienti di staging. Quando possibile, tuttavia, consigliamo di utilizzarlo nel vostro ambiente di staging perché, abilitando la modalità di debug di WordPress, i visitatori potrebbero visualizzare i dettagli del codice PHP del vostro sito (il che è fonte di confusione per i visitatori e anche un rischio per la sicurezza).

Quando avete finito, potete disabilitare la modalità di debug cliccando sul pulsante Disabilita nel cruscotto di Kinsta:

Come disattivare la modalità di debug di WordPress in MyKinsta
Come disattivare la modalità di debug di WordPress in MyKinsta

Come Utilizzare un Plugin per il Debug di WordPress

Se non siete ospitati su Kinsta, potete trovare plugin gratuiti per il debug di WordPress che semplificano l’abilitazione della modalità di debug. Ci sono diverse opzioni su WordPress.org, ma noi consigliamo il plugin gratuito WP Debuging di Andy Fragen.

WP Debugging per WordPress
WP Debugging per WordPress

Una volta installato e attivato il plugin, questo inizia subito a fare il suo lavoro. Di default, il plugin imposta le seguenti costanti su true (cioè abilita le seguenti funzionalità):

  • WP_DEBUG – abilita la modalità di debug.
  • WP_DEBUG_LOG – salva i messaggi in un file di log.
  • SCRIPT_DEBUG
  • SAVEQUERIES

Più avanti in questo post parleremo della funzione delle ultime due costanti.

Per configurare il plugin, andate in Strumenti → WP Debug:

Impostazioni del plugin WP Debug
Impostazioni del plugin WP Debug

Una volta terminato, ricordatevi di disabilitare il plugin per disattivare la modalità di debug.

Come Attivare Manualmente la Modalità di Debug di WordPress

Infine, potete anche abilitare la modalità di debug di WordPress aggiungendo manualmente le costanti al file wp-config.php.

Per iniziare, connettetevi al vostro server via FTP e modificate il file wp-config.php. Di default, questo file si trova nella cartella principale del vostro sito (a meno che non lo abbiate spostato per motivi di sicurezza).

Per abilitare solo la modalità di debug di base di WordPress, aggiungete il seguente frammento di codice sopra la linea che dice /* Finito, interrompere le modifiche! Buon blogging. */:

// Enable WP_DEBUG mode
define( 'WP_DEBUG', true );

Potete anche utilizzare alcune delle seguenti costanti in base alle vostre preferenze:

// Enable Debug logging to the /wp-content/debug.log file
define( 'WP_DEBUG_LOG', true );
// Disable display of errors and warnings
define( 'WP_DEBUG_DISPLAY', false );
@ini_set( 'display_errors', 0 );

Una volta terminato, potrete impostare le costanti su false o semplicemente rimuovere il frammento per disabilitare la modalità di debug.

Assicuratevi di Disattivare la Modalità di Debug in WordPress Quando Avete Finito

La modalità di debug è utile quando si cerca di risolvere i problemi di WordPress, ma non bisogna lasciarla abilitata sempre, perché può rivelare testo dal codice PHP ai visitatori del sito.

Lo abbiamo già detto, ma questo è solo un promemoria per non dimenticare di disabilitare sempre la modalità di debug quando si è terminata l’attività di risoluzione dei problemi.

Altri Metodi per Eseguire il Debug di WordPress

Oltre allo strumento di debug integrato che abbiamo descritto, ci sono diversi altri strumenti integrati e di terze parti per aiutarvi a fare il debug del vostro sito WordPress.

Script Debug

SCRIPT_DEBUG è un’altra costante incorporata che forza WordPress ad utilizzare le versioni di sviluppo dei file CSS e JavaScript del core invece delle versioni minificate che carica normalmente.

Questo può essere utile se si stanno testando modifiche ai file .js o .css incorporati.

Per abilitare SCRIPT_DEBUG, potete:

  • Utilizzare il plugin gratuito WP Debugging descritto in precedenza, che lo abilita di default.
  • Aggiungere la seguente costante al file wp-config.phpdefine( 'SCRIPT_DEBUG', true );

Debug delle Query del database

Se avete problemi con il database del vostro sito, potete abilitare la registrazione delle query del database utilizzando la costante SAVEQUERIES per tracciare:

  • Ogni query eseguita sul database.
  • La funzione che ha chiamato la query del database.
  • Quanto tempo ci è voluto per eseguire la query.

Per abilitare la registrazione delle query potete in alternativa:

  • Utilizzare il plugin gratuito WP Debugging di cui sopra, che lo abilita di default.
  • Aggiungere la seguente costante al file wp-config.phpdefine( 'SAVEQUERIES', true );

Nota: questo avrà un impatto sulle prestazioni del vostro sito, quindi cercate di utilizzarlo su un sito di staging ogni volta che è possibile e disattivatelo non appena avete finito.

Query Monitor Plugin

Il plugin Query Monitor è un plugin gratuito utile per il debug di diverse aree di WordPress:

Nel complesso, è uno dei migliori strumenti di debug di WordPress che troverete in circolazione, ed è per questo che ha quasi il punteggio perfetto di 5 stelle su 5 su oltre 320 recensioni.

Una volta installato e attivato il plugin, si riceveranno varie opzioni sulla barra degli strumenti di WordPress che visualizzano le informazioni di debug. Quando fate clic su queste opzioni, si aprirà una nuova casella Query Monitor che vi fornisce maggiori informazioni:

Il plugin Query Monitor
Il plugin Query Monitor

Per uno sguardo più dettagliato, abbiamo un intero post su come utilizzare il plugin Query Monitor.

New Relic

New Relic è uno strumento premium per l’analisi e il debug delle prestazioni del vostro sito. Può aiutarvi a scoprire colli di bottiglia e problemi che compromettono le prestazioni del vostro sito.

Kinsta include già lo strumento APM integrato. Tuttavia, è ancora possibile usare New Relic nel cruscotto MyKinsta, a condizione di avere la propria licenza.

Log del Server

Infine, i log del server possono essere un utile strumento per il debug di WordPress.

Se siete ospitati su Kinsta, potrete visualizzare tutti i log del vostro server dalla scheda Logs nella dashboard di un sito:

Visualizzare i log del server nel cruscotto di MyKinsta
Visualizzare i log del server nel cruscotto di MyKinsta

Se avete l’hosting altrove, dovrete consultare la documentazione del vostro host per sapere dove è possibile accedere ai log del server.

Riepilogo

Se avete bisogno di eseguire il debug di WordPress, la modalità di debug integrata di WordPress vi fornisce un modo utile per visualizzare gli errori e gli avvisi di PHP.

Se il vostro host è Kinsta, potete abilitarla direttamente dal vostro cruscotto. Altrimenti, potete abilitarlo con i plugin o aggiungendo frammenti di codice al file wp-config.php del vostro sito.

Per un maggiore aiuto, potete utilizzare anche altri strumenti integrati o strumenti di terze parti come New Relic (è necessaria la licenza) e il plugin gratuito Query Monitor.

Avete altre domande su come eseguire il debug di WordPress? Lasciate un commento qui sotto!

Jon Penland

Jon is the Chief Operating Officer at Kinsta and is involved with Kinsta's sales, customer service, and technical support teams on a daily basis. Jon's a family man. So when he isn't feverishly tapping the keys of his laptop he's usually helping one of his kids fix a bike or setting up Netflix for an impatient preschooler.