Modalità Debug di WordPress - Suggerimenti per il debug del tuo sito web

Modalità Debug di WordPress - Suggerimenti per il debug del tuo sito web

Se sei arrivati a questo articolo, presumo che abbiate incontrato un errore sul vostro sito web WordPress . O che sei una persona che fa regolarmente manutenzione e si aspetta di incontrare un bug. In ogni caso, voglio ricordarvi che scrivere codice e scrivere bug vanno di pari passo. Anche i migliori sviluppatori commettono errori. Per non farvi disperare per questi errori, vi ho scritto questa guida su WordPress debug mode. Questo è uno strumento molto utile per scoprire e capire gli errori in WordPress . 

Il primo passo per il debug del codice 

Siediti sulla sedia, fai qualche respiro profondo ed espira, e renditi conto che tutti gli sviluppatori hanno scritto del codice buggato prima o poi. Ogni volta che scrivi codice buggato, impari qualcosa e se impari qualcosa, continuerai a sviluppare e migliorare le tue capacità. 

Anche se può sembrare che un bug sia lì solo per farti impazzire, per fortuna è relativamente improbabile 😉 La cosa positiva è che, a meno che tu non abbia a che fare con una tecnologia all'avanguardia, c'è una buona probabilità che qualcun altro abbia già riscontrato lo stesso bug. 

Che cos'è il debug? 

Se non hai familiarità con il termine debugging, è letteralmente nel nome: de - bugging. Nel linguaggio informatico, un errore nel vostro codice si chiama bug. Quindi debuggare il vostro codice significa: rimuovere gli errori dal vostro codice. Anche se alla gente piace supporre che i bug siano causati dal proprio staff o da aggiornamenti software mal pensati, la verità è che molti bug portano la vostra stessa scrittura - ed è meglio venire a patti con loro all'inizio.

Perché il debug di PHP sembra più complicato di quello di JavaScript

Forse sei abituato a eseguire il debug in un altro linguaggio, ad esempio JavaScript. Un po' di confusione è data dal fatto che JavaScript viene eseguito solo dopo il rendering del tuo sito web - almeno questo è lo standard sul web e il motivo per cui inserisci il tuo file .js alla fine del documento HTML. Ciò significa che il tuo sito web può essere visualizzato anche in presenza di errori JavaScript. Se non te ne accorgi o non controlli il log della console, potresti anche non accorgerti che si è verificato un errore. 

Tuttavia, il PHP è un linguaggio lato server e viene utilizzato per costruire il tuo sito web (anche se può fare molto di più). Quindi, se c'è un errore nel codice PHP, il tuo sito web potrebbe non caricarsi e i visitatori potrebbero non vedere alcun contenuto. Di conseguenza, gli errori di PHP sono solitamente più evidenti. 

Debugging in WordPress con WP-Debug 

Cos'è la modalità di debug di WordPress ?

Se la modalità di debug di WP (a volte chiamata anche wp-debugger o wp-debug) è attivata, ti mostra errori, suggerimenti e avvertimenti segnalati dal sistema WordPress . Per impostazione predefinita, il wp-debugger è disabilitato. La costante PHP wp_debug è la variabile globale che indica lo stato della modalità di debug di WordPress tramite un booleano, cioè se è acceso o spento. 

Perché dovreste usare la modalità di debug di WordPress ?

Perché WordPress usa alcuni componenti di base diversi: 

Frontend - HTML / CSS

Backend - PHP / Database

plugin - applicazioni PHP create da terzi

Può quindi essere piuttosto difficile scoprire cosa ha causato un problema sul tuo sito web. Il wp-debugger è uno strumento che ti permette di visualizzare o registrare gli errori. 

Prima di iniziare il debug, fai un backup! 

Un vecchio detto dice: "Prevenire è meglio che curare". Ciò significa che è meglio non lasciare che il problema si presenti in primo luogo. Per te questo significa: proteggi i tuoi dati!

Un lavoro di manutenzione di 30 minuti può trasformarsi rapidamente in un incubo di 5 ore solo perché non è stato effettuato un backup prima che qualcuno intervenisse sui file interni.

Fortunatamente, se gestiamo il tuo sito web su Raidboxes, il backup avviene automaticamente! Basta andare sulla dashboard, cliccare sulla scheda "Backup" e visualizzare tutti i backup giornalieri. 

una panoramica dei tuoi backup nella sezione Raidboxes dashboard

Se vuoi apportare delle modifiche e devi creare un backup manuale, clicca sul pulsante "Crea backup manuale" e dai un nome al backup. Suggerimento: scegli un nome che abbia un senso, in modo da poter riconoscere il backup in seguito. Ora puoi giocare con il tuo sito web quanto vuoi! Se qualcosa va storto, basta ripristinare il backup. 

come creare un backup manuale nel tuo Raidboxes dashboard

Attiva la modalità di debug di WordPress su Raidboxes

Nel tuo Raidboxes Dashboard puoi attivare il wp-debugger nelle impostazioni del tuo Box con un solo clic: 

come attivare il wp-debugger nel tuo sito web Raidboxes dashboard

Se clicchi su WordPress Debug Logsdopo aver attivato il WP Debug Mode, puoi vedere nel Live Log quali errori vengono lanciati dal tuo sito WordPress . È possibile accedere al log di debug stesso sia tramite le impostazioni nella voce WP Debug (vedi schermata) o tramite lapanoramica BOX . Puoi anche accedere ai file di log di debug di WP via FTP: I tuoi file di log sono memorizzati nella cartella /wp-content/ nel file debug.log.

Modalità Debug di WordPress - Suggerimenti per il debug del tuo sito web

Puoi trovare maggiori informazioni sull'analisi degli errori del tuo sito WordPress su Raidboxes nel nostro centro assistenza.

Hai bisogno di wp-config.php per il debug?

Su Raidboxes puoi attivare la modalità di debug di WordPress con un semplice clic sul tuo sito Dashboard . Il file wp-config.php è di sola lettura per motivi di sicurezza. Tuttavia, nelle impostazioni del tuo sito Box in WordPress > wp-config.php puoi memorizzare voci speciali se necessario.

Molto importante: utilizza questa funzione solo se sei sicuro di cosa fanno le voci. La modifica del file wp-config.php può portare a un sito web difettoso. Prima di aggiungere una voce, devi quindi verificare se hai già creato un backup.

Nella prossima sezione ti spieghiamo come abilitare la Modalità Debug di WP tramite wp-config.php quando sviluppi in locale.

Attivare WordPress Debug localmente 

Nel tuo sviluppo locale, puoi abilitare wp-debug modificando il file wp-config.php nella root della tua cartella WordPress e aggiungendo il seguente codice: 

// Dies aktiviert das Debugging.
define( 'WP_DEBUG', true );

Potresti anche scoprire che questa dichiarazione è già stata aggiunta, ma il valore è falso. Se questo è il caso, basta impostarlo su true. 

// Dies deaktiviert das Debugging.
define( 'WP_DEBUG', false );
dove si trova il file wp-config
abilitare la modalità di debug di WordPress  in PHP

A questo punto vorrei sottolineare ancora una volta quanto sia importante un backup. È un buon momento per ricontrollare questo aspetto.  

WordPress La modalità di debug è ora attiva - e ora?

Ora che il wp-debugger è attivato, gli errori vengono visualizzati direttamente nella finestra del browser (se WP_DEBUG_DISPLAY è impostato su true) - questa è sia una maledizione che una benedizione. Da un lato, puoi vedere gli errori, ma dall'altro, tutti gli utenti del tuo sito web possono vederli, il che non è ideale. Per darvi un esempio, ho aggiunto una piccola funzione sconosciuta al piè di pagina dello standard WordPress Themes "Twenty Twenty-One". 

Prima di attivare wp-debug: 

prima che la modalità di debug WordPress  sia attiva

Dopo aver attivato wp-debug: 

dopo l'attivazione della modalità di debug di WordPress

Probabilmente non vuoi che i visitatori del tuo sito web vedano questo, vero? Il messaggio di errore non solo disturba il design, ma potrebbe anche rivelare informazioni sensibili. Per esempio, prima di apportare alcune modifiche all'output, veniva emesso il mio nome utente e con questa informazione qualsiasi hacker poteva lanciare un attacco. 

I tuoi errori vengono registrati?

Se attivi WP-Debug, le informazioni sull'errore non vengono salvate, ma solo visualizzate. Per salvare queste informazioni, devi attivare wp_debug_log - questo argomento è trattato in modo più dettagliato più avanti nell'articolo.

Come attivare la modalità di debug di WordPress ed evitare che gli errori vengano visualizzati nel tuo codice HTML

Fortunatamente, c'è una soluzione a questo problema in WordPress . Aggiungi il seguente codice al tuo wp-config.php: 

define( 'WP_DEBUG_DISPLAY', false );

In questo modo eviterai la comparsa di errori nel codice HTML del tuo sito web e risparmierai ai tuoi utenti l'incubo che potresti aver causato. L'ultimo pezzo del puzzle è come controllare gli errori senza pubblicarli. Benvenuto nella registrazione degli errori! 

Attivare la registrazione degli errori in WordPress 

Nel file wp-config.php, è necessario abilitare la registrazione degli errori da WordPress . Questo creerà un file .log con i registri e i dettagli degli errori che si sono verificati sul tuo sito web. 

define( 'WP_DEBUG_LOG', true );

Di solito trovi il file di log nella cartella wp-content del tuo sito web WordPress , a meno che tu non abbia un percorso di file valido per questo log come specificato di seguito: 

define( 'WP_DEBUG_LOG', '/tmp/wp-errors.log' );

Tuttavia, il mio log degli errori è stato scritto nella directory principale di WordPress . Quindi, se non trovate il vostro log degli errori nella cartella wp-content, dovreste cercare altrove:  

file di log nel file system

Esame di un registro degli errori

I log degli errori forniscono indicazioni piuttosto chiare su cosa è andato storto. Ma solo perché una cosa è chiara non significa che tu l'abbia capita, quindi cerchiamo di capire meglio. 

esempio di una voce di registro da WordPress  modalità debug
  1. Ora dell'errore: [12-Apr-2021 20:32:47 UTC]
  2. Tipo di errore: Errore fatale di PHP
  3. Causa dell'errore: Uncaught Error: Call to undefined function writeMsg() in
  4. Dove si è verificato l'errore: /home/XXXXXXX/DEVELOPMENT/wp/wp-content/themes/twentytwentyone/footer.php:73

Se ti stai chiedendo quale sia l'errore che ho inserito, ho definito un metodo errato chiamato writeMsg() nel file footer.php che causa un errore. 

Non dimenticare di disattivare!

Importante: non dimenticate di disattivare la modalità di debug di WordPress dopo la vostra analisi. Se lo lasciate attivo, WordPress scrive tutti gli errori che trova nel file debug.log. Se gli errori si verificano regolarmente, questo file può diventare troppo grande e consumare la vostra memoria.

Il registro degli errori di WordPress è troppo grande?

I registri degli errori possono crescere nel tempo se non sono controllati. Ricordate che non solo gli errori, ma anche gli avvertimenti e i suggerimenti sono registrati. Quando ci sono nuove versioni di PHP, certi metodi possono diventare obsoleti o addirittura plugin possono non essere più supportati. In questo caso, verranno generati più errori. 

Normalmente, un registro degli errori dovrebbe avere solo pochi kB di dimensione, ma anche allora è noioso da cercare. Nei casi peggiori, gli errori vengono registrati in un file che è già di diversi MB e contiene migliaia di righe di testo. Oltre ad essere più confuso, questo porta a tempi di reazione più lenti del file di log e può rallentare enormemente la ricerca degli errori a causa dei tempi di attesa durante il caricamento del log. Cosa si può fare allora? 

Scarica il file per archiviarlo e poi cancellalo! 

Se i log degli errori di WordPress sono stati attivati in wp-config.php e nessun file error.log può essere trovato, WordPress crea un file completamente nuovo e lo riempie con gli errori attuali.

Conclusione

Il debugging del codice rende lo sviluppo sia impegnativo che gratificante. Perché gli errori ti costringono a espandere le tue conoscenze, a sviluppare un atteggiamento positivo e a pensare fuori dagli schemi. Se hai domande o difficoltà con il debugging del tuo sito web WordPress , sentiti libero di lasciare un commento o di contattarci nella chat di supporto. Divertiti a fare il debug!

Ha altre domande?

Se hai altre domande sulla modalità Debug di WordPress, non esitare a usare la funzione commenti! Sei interessato agli argomenti di attualità che riguardano WordPress, il web design e il business online? Segui Raidboxes su Twitter e Facebook, LinkedIn o tramite la nostra newsletter.

Ti è piaciuto l'articolo?

Con la tua valutazione ci aiuti a migliorare ancora di più i nostri contenuti. Grazie!

Scrivi un commento

Il tuo indirizzo e-mail non sarà pubblicato. I campi obbligatori sono contrassegnati da *.