Il plug-in Query Monitor

Pubblicato: 2021-02-19

Ogni volta che un sito Web WordPress viene caricato, ci sono numerose cose che accadono dietro le quinte poiché le informazioni vengono estratte da un database e la pagina viene creata e quindi caricata. Poiché queste query recuperano informazioni dal database e possono coinvolgere ogni tema, plug-in e file principale, è incredibilmente utile se possono essere monitorate in qualche modo. Saluta il plug-in Query Monitor.

Il plug-in Query Monitor è uno degli strumenti più popolari per (avete indovinato) il monitoraggio delle query di WordPress. Con un team dedicato che fornisce un ottimo supporto e aggiornamenti regolari, il plug-in Query Monitor fornisce un aiuto inestimabile agli sviluppatori Web durante il debug del sito Web.

Diamo un'occhiata più da vicino al plug-in Query Monitor e vediamo come può essere utilizzato.

Presentazione del plug-in Query Monitor

Query Monitor è uno strumento gratuito per il debug di WordPress. Come con tutti i plugin di WordPress, puoi installare Query Monitor dall'area di amministrazione del plugin.

Una volta che il plug-in è installato e attivato, su ogni pagina che visiti (sia nella visualizzazione front-end che back-end) apparirà un gruppo di numeri che descrivono in dettaglio le statistiche di caricamento della pagina corrente. Questi 4 numeri mostrano il tempo di generazione della pagina, l'utilizzo della memoria PHP, il tempo di query del database e il numero di query effettuate.

Se passi con il mouse su questi numeri apparirà un menu a discesa che fornisce collegamenti a dati aggiuntivi.

Quando fai clic su uno di questi collegamenti, nella parte inferiore della pagina viene visualizzata una finestra con un menu della barra laterale identico al menu illustrato sopra che puoi utilizzare per filtrare i risultati. Lo screenshot qui sotto mostra alcuni dei risultati per l'opzione "Ganci e azioni":

L'ultima scheda del menu si chiama "Condizionali" e non è la stessa per tutte le pagine. Ad esempio, nel back-end mostra in questo modo:

Ma se visualizzi lo stesso menu sul front-end del tuo sito web, vedrai alcune informazioni diverse poiché vengono utilizzate condizioni alternative:

Questa scheda può essere un ottimo strumento per identificare l'hook giusto o il tag condizionale da utilizzare quando si aggiungono nuove funzionalità di plugin o temi.

Cosa fa il plug-in Query Monitor

Quando visiti qualsiasi pagina di WordPress (sia dall'area di amministrazione che dal front-end), il plug-in raccoglie tutti i processi di WordPress che hanno luogo sia sul server che tra il server e il browser del visitatore. Per mostrarteli crea un report di facile lettura che può essere visualizzato come mostrato sopra.

Poiché funziona su ogni pagina del tuo sito Web (sia dall'amministratore che dal front-end), puoi utilizzarlo per eseguire il debug di qualsiasi processo front-end o back-end. Ciò potrebbe variare dall'identificazione e dal debug di query lente del database, chiamate AJAX, richieste API REST e molto altro. Le informazioni fornite sono estremamente utili quando si tratta di cercare di individuare un problema specifico e possono accelerare notevolmente la risoluzione dei problemi.

Alcuni esempi di Query Monitor

Esistono moltissimi casi in cui l'utilizzo di Query Monitor può essere d'aiuto. Ad esempio, il monitoraggio delle dipendenze degli script, gli hook di WordPress, i dettagli dell'ambiente di hosting e i tag di query condizionali possono aiutare a risolvere molti problemi. Di seguito daremo una rapida occhiata ad alcuni usi comuni.

Risoluzione dei problemi di sintassi

Ai fini di questo esempio abbiamo utilizzato una query SQL personalizzata nel modello di un singolo post.

 //// SLOW QUERY TEST global $wpdb; $prefix = $wpdb->prefix; $slowq = "SELECT * FROM {$prefix}_options WHERE option_name LIKE '%siteurl%'"; $results = $wpdb->get_results( $slowq ); echo $results[0]->option_value;

Quando aggiorniamo la pagina, possiamo vedere che non abbiamo risultati per l'output di stampa PHP. Inoltre, la scheda Query Monitor è diventata rossa.

Se passi il mouse sopra l'avviso, verrà visualizzato un altro avviso più dettagliato che legge "Errori del database (1)". Fare clic su questo e puoi vedere l'errore in dettaglio aiutandoti a capire l'errore di sintassi.

Ora, se correggi l'errore e ricarica la pagina, l'avviso dovrebbe scomparire.

Come puoi vedere, abbiamo trovato rapidamente la causa del nostro problema utilizzando il plug-in Query Monitor. Senza la possibilità di monitorare le query in questo modo, potrebbero volerci ore per cercare di capire perché non hai output di eco e non vedi ancora il "_" extra che dovrebbe essere rimosso.

Richieste HTTP che rallentano i tempi di caricamento del sito web

Molti plugin tendono a utilizzare troppe risorse esterne effettuando numerose richieste ad API esterne. Questo può sicuramente rallentare il tuo sito e i plug-in che lo fanno dovrebbero essere evitati se possibile.

Google Analytics o plug-in di commenti come Disqus, Jetpack o Facebook Comments sono plug-in che fanno proprio questo.

Uno script esterno estrae le richieste da altri siti web. Questo non è necessariamente negativo (è probabile che qualsiasi sito Web WordPress utilizzi alcune risorse esterne). Ma quando utilizzi un plug-in o uno script che richiede più risorse esterne, è importante assicurarsi di averne effettivamente bisogno e di aver applicato la migliore soluzione possibile per ridurre al minimo le chiamate esterne.

Puoi vedere tu stesso la differenza caricando uno script jQuery su un server esterno. Dai un'occhiata ai tempi delle richieste utilizzando le schede "Richiesta" di Query Monitor e "Chiamate API HTTP". Quindi carica lo script jQuery sul tuo server e chiedi al tuo sito Web di chiamarlo da questa nuova posizione interna. Potresti rimanere sorpreso quando confronti la differenza tra i tempi delle richieste esterne e interne.

Usa questi strumenti per controllare tutti i plugin che stai utilizzando per vedere se stanno rallentando il tuo sito web.

Modelli a tema

Il plug-in Monitor può anche tornare utile per gli sviluppatori di temi in quanto possono visualizzare la gerarchia dei modelli e i file PHP utilizzati per creare le pagine dei tuoi siti Web.

Bello, vero? Tutte le informazioni a portata di mano. Il nome del tema attivo, le classi del corpo per la richiesta corrente, tutte le parti del modello che sono state caricate (o non caricate) per la pagina corrente e il nome del file del modello e la gerarchia.

Conclusione

Possedere gli strumenti giusti può rendere il lavoro di uno sviluppatore molto più semplice e il plug-in Query Monitor è sicuramente uno da aggiungere al toolkit! Sfrutta al massimo il plug-in per monitorare le risorse utilizzate come memoria o contenuto memorizzato nella cache o rintraccia un plug-in che causa problemi di prestazioni per il tuo sito web.

Se desideri maggiori informazioni sull'utilizzo di Query Monitor, dai un'occhiata alla loro pagina GitHub che fornisce un elenco completo di funzionalità. Buon debug!