X
Skimbu è stato abbandonato, ma è stato sostituito da Tasc.it!

Come migliorare la velocità di WordPress

Pubblicato da il giorno 13 agosto 2011

closeQuesto articolo è stato pubblicato 3 anni 2 mesi 14 giorni tempo fa e potrebbe contenere informazioni non più valide.

Era da tanto tempo che volevo scrivere questo articolo, che riportasse, almeno in parte, tutte le cose che abbiamo imparato qui su Skimbu per migliorare la velocità di WordPress principalmente attraverso dei plugin, ma anche attraverso un’analisi del tema e dei plugin che si possiedono. In questo articolo ti mostrerò le principali tecniche utilizzate da Skimbu per migliorare la velocità di WordPress.

Plugin utili

Prima di passare alle tecniche vere e proprie, vediamo prima i tre plugin fondamentali che ci aiutano nel migliorare WordPress.

W3 Total Cache

Avevamo già parlato dei plugin per la cache. La prima cosa da fare per velocizzare WordPress è sicuramente attivare uno di questi plugin. Questi plugin possono arrivare a velocizzare anche del 70% il tuo blog. W3 Total Cache è il più completo in quanto:

  • Effettua la cache delle pagine
  • Effettua la cache del database
  • Effettua la cache degli oggetti
  • Ha delle funzioni per incentivare la cache del browser che può velocizzare del 30% il tuo blog
  • Supporta la CDN (Content Delivery Network). La CDN è un metodo per salvare banda e fornire più velocemente i file statici ai tuoi visitatori, in quanto vengono forniti da un servizio esterno al tuo blog. Solitamente questi servizi sono a pagamento ma costano comunque poco. Skimbu utilizza MaxCDN. Per configurarlo con W3 Total Cache ti rimando ad un articolo inglese molto ben fatto.
  • Comprime i file Javascript e CSS del tema utilizzato per ridurne la dimensione

Per concludere voglio ribadire, in poche parole e per gli utenti meno esperti, come funziona un plugin di cache. I blog basati su WordPress sono solitamente molto dinamici, significa che molte cose che vengono visualizzate nelle pagine sono frutto di operazioni (che richiedono dei millisecondi o talvolta anche più secondi) compiute da PHP e quindi dal server su cui si trova il blog. Il plugin non fa altro che memorizzare queste operazioni in modo da non svolgerle per un certo periodo di tempo (1 ora o di più oppure fino a quando non viene aggiornato il blog), così ai visitatori vengono servite le operazioni già compiute anziché ri-eseguirle ad ogni visita.

WP Smush.it

WP Smush.it è uno di quei plugin che considero “perfetto”. Fa il suo lavoro, si aggiorna costantemente e non dà mai problemi! Il plugin si basa sulle tecniche di miglioramento delle performance redatte da Yahoo, che suggerisce di ottimizzare (=comprimere) le immagini. Cosa significa? Solitamente tutte le immagini JPG, PNG e GIF contengono informazioni inutili che possono essere cancellate per ridurre la dimensione dell’immagine. Wp Smush.it non fa altro che comprimere tutte le immagini che inserirai negli articoli e nelle pagine del tuo blog. Grazie a questo plugin:

  • Risparmierai spazio sul tuo server
  • Le immagini saranno caricate più velocemente

Una volta attivato potrai eseguire la compressione di tutte le immagini già presenti non compresse andando nel menu Bulk Smush.it sotto Media nel pannello di amministrazione di WordPress.

Optimize DB

Più il database è leggero, più il tuo blog andrà veloce. E spesso ci sono molte informazioni e dati inutili in un database. Per questo esistono plugin affidabili con cui ottimizzarlo. Primo fra tutti è Optimize DB.  Esiste un plugin più complesso e alternativo che si chiama WP-Optimize. Una volta installato Optimize DB basterà andare nel menu Optimize DB sotto Strumenti e lanciare la procedura di ottimizzazione. Di solito trova parecchi megabyte che possono essere eliminati.

Tecniche avanzate

Le seguenti tecniche sono più complesse che attivare un plugin che fa tutto da solo.

CSS Sprites

Se sei abbastanza esperto di temi WordPress, adotta il prima possibile la tecnica dei CSS Sprites. Abbiamo già pubblicato un articolo dettagliato su come crearli nel modo più veloce possibile. Solitamente tutte le immagini del tuo blog vengono caricate una ad una. Ad ogni caricamento viene eseguita una richiesta HTTP, che richiede qualche millisecondo. Con i CSS Sprites tutte le immagini vengono incluse in una grande immagine, chiamata “sprite”, ciascuna immagine contenuta in questa grande immagine verrà poi inserita e “ritagliata” nel blog attraverso i CSS. Quindi se hai 20 immagini, anziché caricare 20 immagini ne caricherai solo una, abbastanza pesante ma aumenterà lo stesso la velocità del tuo blog.

Velocizzare il caricamento dei file javascript

Ormai in tutti i blog c’è qualcosa di javascript. Su Skimbu facciamo largo uso di javascript, per questo abbiamo dovuto adottare le due principali tecniche per velocizzare il caricamento dei file JS:

  • Compressione, rimuovendo tutti gli spazi bianchi inutili
  • Mettere i file JS nel footer

Il primo punto è fattibile sia con il plugin W3 Total Cache di cui abbiamo parlato ora, sia con molti tool online, ad esempio questo. Il secondo punto invece è un po’ più complesso, per due motivi:

  • Molti file javascript necessitano di restare nell’header per funzionare
  • Molti file javascript sono generati da alcuni plugin WordPress e non è possibile spostarli nel footer se non con metodi forzati (ad esempio un plugin WordPress) che però solitamente non funzionano bene

Il tuo scopo è dunque aprire il tema e vedere quali e quanti file javascript puoi mettere nel footer. Per “mettere nel footer” si intende metterli appena prima della chiusura del tag </body>. È un’operazione che ti ruberà del tempo e che dovrai fare con cautela in quanto ricordo che alcuni file javascript potrebbero non più funzionare.

Per concludere c’è un’ultima tecnica che consente di aumentare la velocità di caricamento di javascript. Tale tecnica consiste nel combinare tutti i file javascript in un unico file. È un’operazione che può fare in automatico W3 Total Cache ma che sconsiglio di fare. Per il motivo anche spiegato prima, cioè che tutti gli script messi in un unico file potrebbero andare in conflitto. Per questo invito a fare questa operazione manualmente, includendo gli script uno ad uno in uno stesso file e vedendo se continuando a funzionare bene oppure no. Skimbu adotta questa tecnica parzialmente, molti script si trovano in un unico file del tema chiamato “scripts.js”, mentre altri script si trovano in singoli file.

Rimuovere plugin inutili

La maggior parte dei plugin che hai installato nel tuo blog WordPress aggiungono dei pezzetti di codice nel tuo blog o nel pannello di amministrazione. Da questo puoi dedurre che meno plugin hai, meno pezzetti di codice in più ci saranno e più veloce andrà il tuo blog. Anche i plugin inattivi, in qualche modo, rallentano WordPress. Dunque controlla la lista di tutti i tuoi plugin ed elimina quelli che puoi eliminare.

Analizza, scopri e migliora la velocità (solo per esperti)

Velocizzare un blog è un’arte che ormai mi ha appassionato. In quanto non sta solo nell’aggiungere plugin e nel migliorare il codice, ma sta anche nell’analizzare e scoprire cosa va veloce e cosa va più lento. È un po’ come trovare un colpevole di un’omicidio. Certo, stiamo parlando di casi diversi ma la teoria è quella: trovare il colpevole della lentezza del tuo sito. Per farlo hai bisogno di indizi.

Ti faccio un esempio pratico accaduto qui su Skimbu. Questo articolo andava lentissimo fino a poco tempo fa, e ho dovuto scoprire perché. Dopo un banale ragionamento ho scoperto che i riquadri di ciascuna applicazione erano la causa del rallentamento, in quando quei riquadri sono dinamici e raccolgono informazioni direttamente dai server Apple, immagina però raccogliere informazioni per 100 volte! La pagina andava veloce quando veniva eseguita la cache da W3 Total Cache, ma ad ogni pulizia della cache era necessario che un visitatore aspettasse almeno 1 minuto prima che venisse caricata la pagina. Tempi improponibili anche per un solo visitatore. Così ho trovato la soluzione e ho pubblicato un articolo a riguardo.

Per scoprire come mai il tuo sito va lento, esclusa la possibilità che la colpa sia del tuo hosting, puoi installare un plugin che ti può tornare utile. Il plugin si chiama Debug Queries e una volta attivato visualizzerà agli admin nella home del tuo blog tutte le query eseguite, con il relativo tempo. Se ci sarà una query che ha richiesto molto tempo dovrai cercare una soluzione per eliminarla o velocizzarla.

Infine, come puoi scoprire e ottenere consigli per migliorare la velocità? Esistono due estensioni per browser, ySlow di Yahoo e Page Speed di Google, che ti consiglio vivamente di installare.

Conclusioni

Ti ho mostrato le principali tecniche e i principali plugin per velocizzare il tuo blog. Come ho detto sono solo le principali, in realtà esistono centinaia di piccoli miglioramenti che puoi fare per il tuo blog. Su Skimbu in futuro troverai altri articoli più avanzati riguardanti ulteriori miglioramenti. Se sei impaziente allora ti invito a fare questa ricerca in Google dove troverai decine di articoli utili.

, 892 articoli pubblicati

Fin da quando ho 7 anni sviluppo siti web, amo l'informatica, la fotografia, la scienza e l'economia. Credo che il segreto del successo stia nel fare cose che altri non fanno. Nel 2008 ho fondato Skimbu, a cui ho voluto fin da subito dare una precisa immagine attraverso una grafica semplice, bella e unica e attraverso articoli di qualità e anch'essi unici. Poi son cresciuto, ora mi trovate su tasc.it, per maggiori info visitate il mio sito personale.

Visita il sito web di questo autore

Condividi l'articolo!

  • Red

    A me Wp smush ha aumentato di 200 mega lo spazio ………………………

    • http://www.skimbu.it Alberto Ziveri

      !?! impossibile, come mai?

      • Red

        Se lo sapessi so solo che prima di usare quello c’erano 778 mega… ora 968 mega…
        Recensione: Non usatelo.

    • http://reybozblog.it Reyboz Blog

      Scusa ma sei sicuro di aver guardato solo il peso dei file contenuti nella wp-content/uploads? :) A me sembra un po’ strano che tu abbia avuto 778 mega di media e che siano schizzati a 968…!

  • http://melapolis.com/ Alex (MelaPolis.com)

    Grande Alberto, come sempre qui si trovano articoli molto utili! Avete davvero una marcia in più su Skimbu, continuate così :)

  • Stefano Paterlini

    E’ la prima volta che passo da questo blog, ma è uno dei pochi che mi sta intrattenendo! Complimenti Alberto!

    (dopo aver scritto il mess dall’account google noto che non appare il mio avatar, come posso farlo apparire?)

Seguici per leggere

Prima di vedere il contenuto che stai cercando seguici su Facebook per scoprire sempre grandi articoli riguardanti la tecnologia, la scienza, l'innovazione, la moda e le tendenze. Abbiamo una filosofia unica e giovane, e ci serve il tuo sostegno.

Se non hai Facebook seguici su Twitter!

Non ho Facebook ne Twitter o vi seguo già