Rinviare l'analisi di Javascript in WordPress [Utilizzando Defer e Async]

Pubblicato: 2023-04-19

I siti WordPress a caricamento rapido offrono seri vantaggi quando si tratta di migliorare l'esperienza utente per i visitatori, migliorare la visibilità del tuo sito Web sui motori di ricerca e aumentare il traffico organico del tuo sito.

Una pagina web contiene HTML, CSS, Javascript e immagini e ognuno di questi deve essere ottimizzato per ridurre il tempo di caricamento della pagina. Le immagini hanno uno dei maggiori effetti sulla dimensione della pagina, quindi è importante ridurre le dimensioni del file immagine utilizzando un plug-in di ottimizzazione delle immagini di WordPress.

Tipo di codice Utilizzo
HTML Utilizzato per il contenuto e la struttura della pagina
CSS Utilizzato per caratteri, colori, spaziatura e altri stili
JavaScript Utilizzato per pulsanti, moduli, video, cursori e altro
Gli elementi costitutivi di una pagina web.

Per migliorare ulteriormente le prestazioni della pagina, puoi rinviare l'analisi di javascript in WordPress , il che significa che puoi consigliare ai browser di caricare il contenuto e le immagini della pagina prima che Javascript venga caricato. Prendere questa misura significa che gli elementi Javascript come moduli e cursori potrebbero richiedere alcuni secondi in più per caricarsi, ma questo è un piccolo prezzo da pagare poiché i tempi di caricamento della pagina sono migliorati in modo significativo.

differire l'analisi di javascript in WordPress
All'inizio degli anni '90, i siti Web mostravano solo informazioni statiche come testo e immagini. Tutto è cambiato nel 1995, quando il popolare browser di Netscape, Netscape Navigator, ha aggiunto il supporto per un nuovo linguaggio di scripting chiamato Javascript.

Il codice Javascript può essere eseguito successivamente utilizzando due tecniche chiamate Defer e Async . Entrambi i metodi sono supportati dai popolari plug-in di memorizzazione nella cache di WordPress, anche se le soluzioni dedicate ti daranno un po' più di controllo su quali file Javascript vengono caricati in seguito.

In questo articolo, spiegherò quali sono i vantaggi di differire il caricamento dei file Javascript e ti mostrerò cinque utili plugin di WordPress che semplificherà il processo per te.

Ti incoraggio a leggere l'intero articolo per comprendere appieno l'argomento, ma se sei un principiante, l'unica cosa che dovresti togliere da questo articolo è che Defer e Async possono migliorare significativamente i tempi di caricamento della pagina del tuo sito web.

Diversi modi per differire l'analisi di Javascript in WordPress (con Defer & Async)

Javascript si è affermato come un importante elemento costitutivo dei siti Web WordPress, utilizzato per visualizzare pulsanti, moduli, gallerie multimediali, audio, video, timer per il conto alla rovescia, timeline dei social media e altro ancora.

Sfortunatamente, Javascript è anche uno dei motivi principali per cui le pagine Web si caricano lentamente poiché il browser deve arrestarsi, scaricare ed eseguire ogni script prima di poter continuare ad analizzare il markup HTML della pagina.

L'analisi è il processo in cui il browser analizza e converte il codice della pagina in un formato che può eseguire. Qualsiasi codice che interrompe questo processo è chiamato "Render-Blocking" in quanto ritarda il processo di rendering della pagina per i visitatori.

Le risorse che bloccano il rendering sono un motivo comune per cui un sito Web WordPress si carica lentamente. I CSS critici possono essere visualizzati in linea per impedire il blocco del rendering, ma è meglio posticipare il caricamento di Javascript in un secondo momento utilizzando Defer o Async per impedire al codice Javascript di bloccare il rendering della pagina.

È inoltre buona norma rimuovere il codice Javascript inutilizzato e ridurre i tempi di esecuzione di Javascript. Un modo per farlo è ridurre le dimensioni dei file Javascript di grandi dimensioni attraverso un processo chiamato Minification , che rimuove gli spazi bianchi e il codice non necessario da ogni file Javascript.

codice javascript
Javascript viene utilizzato sui siti Web per visualizzare pulsanti, moduli, dispositivi di scorrimento e altro.

Una delle metriche più importanti che i servizi di benchmarking del sito web come Google PageSpeed ​​Insights e GTmetrix considerano è First Contentful Paint, che è il tempo necessario per visualizzare il primo contenuto ai visitatori. Google afferma che un tempo FCP compreso tra 0 e 1,8 secondi è buono e tra 1,8 e 3 secondi moderato. Tutto ciò che supera i 3 secondi è considerato lento.

Tutto quello che devi fare è inserire l'URL di una pagina in un servizio di benchmarking del sito web per vedere i file Javascript e CSS che stanno bloccando il rendering della pagina. Come puoi vedere dallo screenshot qui sotto, i file CSS e Javascript che bloccano il rendering possono richiedere alcuni secondi per essere scaricati, quindi se puoi eliminare queste risorse, le tue pagine si caricheranno molto più velocemente.

Risorse di blocco del rendering
Analizza le tue pagine per vedere quali file Javascript e CSS stanno bloccando il rendering.

Il modo più efficace per eliminare i file Javascript che bloccano il rendering è utilizzare gli attributi defer e async . Questi attributi booleani possono essere utilizzati solo con l'elemento script HTML quando l'attributo SRC viene utilizzato per chiamare file esterni.

 <script src="javascript.js"></script>

File JavaScript

 <script defer src="javascript.js"></script>

File Javascript con rinvio

 <script async src="javascript.js"></script>

File J avascript con Async

Quando aggiungi l'attributo defer o async all'elemento script HTML, stai consigliando al browser di scaricare il file nello stesso momento in cui la pagina viene analizzata. Con il differimento, il file viene eseguito una volta che la pagina è stata completamente analizzata.

Al contrario, l'attributo async è un'operazione asincrona che esegue il file non appena è stato scaricato. Pertanto, il tempo totale per analizzare una pagina con async sarà leggermente superiore in quanto il browser interromperà brevemente l'analisi dell'HTML per eseguire il file.

Se dovessi specificare sia defer che async, i browser utilizzeranno async.

Differire Asincrono
Scarica il file nello stesso momento in cui la pagina viene analizzata Scarica il file nello stesso momento in cui la pagina viene analizzata
Esegui il file una volta che la pagina ha terminato l'analisi Eseguire il file non appena è disponibile
I file vengono eseguiti in ordine sequenziale Sospende l'analisi HTML per eseguire i file
La differenza tra Defer e Async.

Uno standard importante da comprendere è il Document Object Model, che viene spesso definito DOM. Il DOM rappresenta un intero documento, come un file XML o una pagina HTML, come un singolo oggetto. Elementi importanti come la testa, il corpo e le intestazioni, possono essere considerati rami del DOM.

Se un file Javascript non richiede informazioni da un altro file o dal DOM stesso, potrebbe essere utile utilizzare il metodo asincrono poiché gli elementi importanti della tua pagina verranno visualizzati più rapidamente. Tieni presente che async può causare errori con il tuo sito Web se il file richiede informazioni che non sono ancora state caricate.

Se un file Javascript richiede informazioni, defer è l'opzione preferita in quanto garantisce che tutto il contenuto venga recuperato correttamente prima che il file venga eseguito.

L'obiettivo di differire e async è ridurre il blocco del rendering della pagina e vedrai un notevole miglioramento nei tempi di caricamento della pagina qualunque sia il metodo che usi.

Consiglio di leggere l'articolo di Zell Liew "Come e quando utilizzare gli attributi Async e Defer" per una spiegazione più completa di quando utilizzare defer e async.

Come posticipare l'analisi di Javascript utilizzando un plug-in di WordPress

La maggior parte delle chiamate Javascript sul tuo sito Web proverrà dal tuo tema WordPress e dai plug-in WordPress attivati, pertanto non è pratico aggiungere manualmente gli attributi defer e async agli elementi dello script.

È meglio utilizzare un plug-in di WordPress per le prestazioni per rinviare l'analisi di javascript in WordPress e semplificare il processo di applicazione del differimento o dell'asincronia in tutto il sito Web.

Tieni presente che un'impostazione di configurazione errata causerà problemi con il design del tuo sito web. Ad esempio, i moduli di contatto potrebbero non essere visualizzati correttamente a meno che non si scelgano le impostazioni di configurazione corrette o si escludano i file del modulo di contatto dall'ottimizzazione.

Sono quindi necessari tentativi ed errori per trovare le giuste impostazioni di configurazione e le migliori prestazioni per il tuo sito web.

  • Backup del sito Web : esegui il backup del tuo sito Web prima di attivare un plug-in di ottimizzazione di WordPress
  • Prestazioni di test : verifica le prestazioni delle pagine principali del tuo sito Web e ogni volta che modifichi un'impostazione di configurazione dell'ottimizzazione
  • Rivedi il tuo sito web : verifica che nessuna parte del tuo sito web sia danneggiata dopo aver modificato la configurazione

Se riscontri problemi importanti durante il rinvio dell'analisi di javascript, ripristina le impostazioni predefinite del plug-in. Il plug-in può anche essere disinstallato se non funziona in armonia con il tuo sito web.

1. Ottimizzazione automatica

Ottimizzazione automatica
Autoptimize è attivo su oltre un milione di siti Web WordPress.

Autoptimize è una versatile soluzione di ottimizzazione di WordPress che ti consente di aggregare e minimizzare Javascript, CSS e HTML. Il contenuto ottimizzato viene memorizzato nella cache per migliorare le prestazioni. Questa cache può diventare rapidamente troppo grande, quindi ti consiglio di utilizzare Autoclear Autoptimize Cache per cancellare automaticamente la cache.

Sebbene Autoptimize sia noto per l'aggregazione di file, può anche essere utilizzato per differire l'analisi dei file Javascript in modo che non blocchino il rendering. Il codice Javascript e CSS può anche essere visualizzato in linea e ci sono ulteriori opzioni di ottimizzazione per immagini, Google Fonts, emoji e altro.

rinviare l'analisi di javascript in WordPress utilizzando Autoptimize
Autoptimize funziona in armonia con i plugin di memorizzazione nella cache di WordPress.
SCARICA AUTOOTTIMIZZA

2. Plug-in JavaScript asincrono

rinviare il caricamento di Javascript utilizzando Async JavaScript
Async JavaScript ti dà il pieno controllo sugli script.

Sviluppato dal creatore di Autoptimize, Async JavaScript ti consente di applicare async e differire ai file Javascript in tutto il tuo sito web. Ti dà il pieno controllo su ogni file Javascript, permettendoti di escludere jQuery, file Javascript specifici, plugin WordPress e temi WordPress. Se preferisci, puoi specificare esattamente quali file Javascript devono essere sincronizzati e quali posticipare.

Una delle funzionalità più interessanti di Async Javascript è la procedura guidata di installazione che esegue test delle prestazioni su GTmetrix per tutte le possibili impostazioni di configurazione per il tuo sito web. Questo è un ottimo risparmio di tempo in quanto i risultati mostrano esattamente quanto sarà veloce il tuo sito web con ogni configurazione, ma assicurati di controllare il tuo sito web ogni volta per assicurarti che nessun aspetto del tuo sito web sia danneggiato.

Impostazioni JavaScript asincrone
La procedura guidata di Async JavaScript ti aiuta a determinare le migliori impostazioni di configurazione.
SCARICA JAVASCRIPT ASYNC

3. Perfmatters

Perfmatters
Perfmatters ha molti strumenti e funzionalità utili per le prestazioni.

Perfmatters è un toolbox premium per le prestazioni di WordPress che vanta dozzine di caratteristiche prestazionali uniche. Venduto al dettaglio da $ 24,95 all'anno, il plug-in ti consente di differire l'analisi dei file Javascript (tutti i file JS) sul tuo sito web. I file jQuery possono essere inclusi nei rinvii e puoi anche escludere specifici file Javascript. Un'altra opzione interessante che ti offre è Javascript Delay, che caricherà i file Javascript solo quando c'è l'interazione dell'utente.

Perfmatters può essere utilizzato per disabilitare le funzionalità principali di WordPress per migliorare la sicurezza e le prestazioni. Consente inoltre di definire un URL di accesso personalizzato, precaricare i contenuti, caricare le immagini in modalità lazy, integrare Google Analytics, ottimizzare Google Fonts e altro ancora.

La mia funzione preferita è lo script manager in quanto ti consente di abilitare e disabilitare i file Javascript e CSS per ogni pagina del tuo sito web. Ciò ridurrà considerevolmente le dimensioni delle pagine poiché gli sviluppatori di WordPress hanno la cattiva abitudine di caricare file Javascript e CSS in tutto il tuo sito Web, anche quando sono necessari solo su poche pagine.

Impostazioni Javascript di Perfmatters per rinviare l'analisi di Javascript
Perfmatters ti consente di differire e ritardare i file Javascript.
SITO UFFICIALE

4. Pulizia delle risorse

Pulizia delle risorse
Asset CleanUp fornisce una serie di strumenti per ridurre le dimensioni delle pagine.

Asset CleanUp è un plug-in WordPress di ottimizzazione ricco di funzionalità che consente di minimizzare, combinare e differire l'analisi di file Javascript e CSS. Il suo gestore CSS e JS funziona in modo simile al gestore di script di Perfmatter, consentendo di specificare se un file viene caricato su una determinata pagina. Puoi anche disabilitare le impostazioni principali di WordPress, ripulire il codice HTML, ottimizzare Google Fonts e altro ancora.

Una singola licenza per Asset CleanUp Pro costa € 42,36 all'anno. L'aggiornamento consente di inserire il codice in linea e di specificare asincrono e differire per i file Javascript pagina per pagina. Sblocca anche un gestore di plug-in e ti offre un maggiore controllo su come le risorse vengono caricate sul tuo sito web.

File del tema di pulizia delle risorse
Ogni file Javascript può essere configurato individualmente.
SCARICA LA PULIZIA DEL PATRIMONIO
PULIZIA RISORSE PRO

5. Precaricamento push HTTP/2

Precaricamento push HTTP/2
Il contenuto può essere precaricato anche con HTTP/2 Push Preload.

HTTP/2 Push Preload consente di eseguire il push e il precarico di file Javascript e CSS sul server supportato da HTTP2 utilizzando la funzione di caricamento in coda. Questo può essere applicato a tutti i file oppure puoi scegliere di configurare ciascuna risorsa separatamente. I tipi di risorse includono script, stile, audio, incorporamento, recupero, carattere, immagine, oggetto e video.

Quando inserisci l'URL di un file Javascript, puoi scegliere di sincronizzare, rinviare o rimuovere. HTTP/2 Push Preload consente di definire le regole su quando verrà applicata questa impostazione. Puoi definire regole Javascript per una risorsa per tutte le pagine, per dispositivi mobili o desktop, per post e pagine specifici, per categorie, pagine di ricerca, pagine WooCommerce e altro ancora.

Precaricamento push HTTP/2
Specifici file Javascript possono essere rimossi o impostati per differire o essere asincroni.
SCARICA PRECARICO PUSH HTTP/2

Pensieri finali

Javascript continua ad essere il metodo preferito per aggiungere contenuti dinamici ed elementi interattivi ai siti web. Poiché molti temi e plug-in di WordPress utilizzano Javascript, è importante differire l'analisi di javascript in WordPress e utilizzare defer e async per garantire il rendering rapido delle pagine e ridurre il blocco del rendering delle pagine.

Troverai funzionalità per applicare differimento e async in molti plugin di WordPress, sebbene le soluzioni a cui ho fatto riferimento in questo articolo ti diano un maggiore controllo sui tuoi file Javascript.

Sul mio sito Web, utilizzo Autoptimize per l'aggregazione di file e Async JavaScript per i rinvii Javascript. Sono stato soddisfatto di Async Javascript, anche se HTTP/2 Push Preload potrebbe essere un'opzione migliore per molti proprietari di siti Web in quanto ti offre un controllo migliore su dove vengono applicate le impostazioni di ottimizzazione.

Asset CleanUp e Perfmatters offrono caratteristiche e funzionalità simili, quindi non consiglio di usarli insieme. Asset CleanUp Pro offre indubbiamente un controllo migliore e funzionalità più avanzate, anche se continuo a utilizzare Perfmatters sul mio sito Web per ripulire WordPress poiché è più facile da usare. Entrambe le soluzioni miglioreranno qualsiasi configurazione di ottimizzazione di WordPress, anche se si utilizza un plug-in WordPress diverso per rinviare l'analisi di javascript per ridurre il blocco del rendering della pagina.

Ti incoraggio a testare tutti questi plugin di WordPress per rinviare l'analisi di javascript ed eseguire più test per assicurarti di avere la migliore configurazione.

Buona fortuna.

Kevin