Velocizzare WordPress: La Guida (semi) Definitiva per Rendere più Veloce il Tuo Blog

"Io sono velocità." (cit.)

scritto da Francesco Gavello [+] il 22 maggio 2014 | 74 Commenti in: Blogging Tips | Featured | Tool e Risorse

Come rendere WordPress più veloce

Una nota importante: questo articolo è stato rivisto in data 21/05/2014 ed è stato originariamente pubblicato il 5/02/2010. Gran parte delle informazioni contenute erano ancora valide, tuttavia visto il tema e l’interesse mantenuto nel tempo aveva proprio bisogno di una svecchiata. Buona ri-lettura!

Il 40% delle persone abbandona un sito se questo impiega più di 3 secondi a caricarsi, e il 47% degli utenti dà per scontato che una pagina si carichi in 2 secondi, se non meno. Lo dice KISSmetrics sulla base di uno studio di Akamai e Gomez.com.

Il tuo sito che tempi fa? :)

Non è più una novità come Google consideri la velocità di caricamento di una pagina web come uno dei fattori rilevanti al posizionamento di quest’ultima tra le SERP.

L’ottica del fornire all’utente un’esperienza di navigazione positiva passa dopotutto anche per una maggiore reattività dei risultati proposti; a nessuno piace trovare finalmente il link perfetto per le proprie esigenze e scoprire che l’intero dominio impiega mezzo minuto per passare da una pagina all’altra. Inoltre, un sito reattivo mantiene nell’utente l’idea di possederne davvero il controllo.

Così, da più parti si è potuto assistere a reazioni del tipo: “Argh! Il mio blog è troppo lento! Ancora troppo lento, dannazione!” a “Non ho la minima idea di cosa Matt Cutts stia dicendo. E poi chi diavolo è Matt Cutts?” passando per “Ecco, Google polverizzerà le mie posizioni in SERP solo perché non ci capisco un tubo di tutte queste cose tecniche.”

Ok.
Per prima cosa: rilassati.

Probabilmente Google non si dimenticherà di te solo per via di quel paio di secondi in più nel caricamento della home del tuo blog. Ci sono molti altri i fattori altrettanto rilevanti per valutare la qualità delle tue pagine.

Ciò nonostante, la strada è tracciata: la velocità di caricamento del tuo blog influisce (e influirà sempre di più) sulla sua posizione nei risultati di Big G.

È tempo di agire! :D

Fase #1: Analisi

Prima di sellare il tuo destriero e correre lancia in resta all’attacco di quei maledetti secondi extra, è bene fermarsi a riflettere qualche istante.

Per prima cosa, è bene rendersi conto di un semplice aspetto: la velocità di caricamento effettivo di un sito o blog non è quasi mai quella effettivamente percepita. Questo perché il tempo vero e proprio che una pagina impiega per caricarsi completamente passa in secondo luogo (per l’utente) rispetto al disporre dei contenuti che effettivamente, in tutta quella pagina, ci servono. Un esempio di come aumentare questa velocità “fittizia” è dato dall’uso di Lazy Load, di cui parleremo poco più sotto.

1. Quanto sei veloce?

Se è vero che Google solleva la questione, proprio Google presenta i giusti strumenti per valutare la propria condizione. Google Analytics ti permette di valutare nel dettaglio la velocità del tuo blog semplicemente recandoti sotto la sezione “Comportamento” e scendendo in “Velocità” e poi “Panoramica”.

Sempre da questa sezione potrai avere visione dei tempi di caricamento di alcune delle pagine campionate per il tuo sito o sfogliare alcuni già fondamentali “suggerimenti per la velocità” riportati da un altro tool di Google: Page Speed Insights.

2. Che performance hanno le tue pagine?

In questo senso, se sei deciso a valutare singolarmente la velocità di una singola pagina, non posso che consigliarti i 3 migliori strumenti che hai a disposizione:

Il primo, YSlow è un componente aggiuntivo per il tuo browser basato sulle più che esausive “Best Practices for Speeding Up Your Web Site” (sempre edite da Yahoo!). A mio parere il miglior modo di approfondire la questione se mastichi un minimo di inglese tecnico.

PageSpeed, altrettanto popolare servizio di Google è disponibile sia nella versione estensione per browser che in versione servizio web. Anche in questo caso l’obiettivo è valutare altrettanto nel dettaglio la velocità delle tua pagine, fornendo indicazioni pratiche sui punti più critici.

Infine, all’interno dei Pingdom Tools troviamo un utilissimo quanto disarmante nella sua semplicità strumento per verificare la velocità di un qualunque dominio. È sufficiente digitare un URL e attendere la comparsa della “cascata” di elementi caricati dalla pagina, separati per tempo di attesa, connessione, download e molto altro ancora. Fondamentale per capire al volo quale elemento sia il più lento dell’intero battaglione, e stia riducendo la velocità globale.

3. Stai usando la compressione gZip?

Terzo e ultimo test che puoi fare alle tua pagine -ma sarebbe più corretto dire al tuo hosting- è quella di verificare la presenza o meno dell’estensione mod_gzip. La compressione gZip è semplicemente utilissima e permette che i dati vengano trasmessi dal tuo hosting al browser di turno in formato compresso, risparmiando banda e permettendo una più rapida composizione delle pagine.

Puoi controllare se le tue pagine sfruttino la compressione gZip direttamente online. In caso contrario dovrai informarti presso il tuo hosting per verificare la possibilità di attivare questo componente per il tuo dominio.

Se non sei ancora sicuro della compressione delle pagine (singole) che stai visualizzando puoi sfruttare l’ottima Web Developer Toolbar per analizzare gli header di risposta. Nella toolbar è sufficiente recarsi sotto “Informazioni” e poi su “Visualizza Header di Risposta”.

Fase #2: Azione

Ora che hai stabilito la situazione in cui versa il tuo blog puoi procedere a rimediare (o migliorare!) le prestazioni di quest’ultimo verso i tuoi amati lettori.

1. Aggiorna il tuo CMS

Sembra la considerazione più banale e scontata dell’universo tutto, eppure un CMS aggiornato è sicuramente più snello -e più sicuro- di tutte le sue release precedenti. Aggiorna WordPress non appena ne hai l’occasione e mantieni il codice che gestisce il tuo intero blog al massimo delle sue performance.

Aggiorna WordPress. Adesso.

2. Rimuovi quanto più PHP possibile

Quando si utilizzano temi di terze parti, spesso gratuiti o comunque adattati alla meno peggio, non è raro imbattersi in una quantità esorbitante di codice facilmente ottimizzabile (leggi: di cui fare volentieri a meno).

Il succo è: cerca sempre di rendere statica la quantità maggiore di codice PHP presente nel tuo layout. Non solo stresserai meno la macchina che gestisce il tuo dominio, ma renderai più veloce la composizione delle pagine, finalmente libere dal dover generare (ancora e ancora) sempre lo stesso output.

Uno degli esempi più classici è il menù di navigazione.
Definisci i link fornendo l’URL completo (es. http://francescogavello.it/nome-pagina ) anziché:

<?php bloginfo('url'); ?>/nome-pagina

e allo stesso modo fai attenzione a fornire meno riferimenti possibili a codice PHP da interpretare anche su:

  • link a feed RSS globali o dei commenti
  • link a pagine autore
  • link di navigazione nei menù principali
  • titolo del blog e descrizione (motto)

3. Sposta i Javascript al fondo dell’HTML

Il codice Javascript necessita tempo per essere interpretato e soprattutto ciò viene fatto un file Javascript per volta. Mentre fa questo, il browser interrompe il restante caricamento della pagina. Spostando la maggiore quantità possibile di codice JS nel footer del tuo blog (o genericamente più in basso possibile nel codice HTML) permetti ai tuoi lettori di cominciare ad usufruire della pagina, pure in modo parziale, molto prima che l’intero JS sia stato caricato.

Esistono soluzioni basate su plugin per spostare automaticamente tutto il codice javascript nel footer senza colpo ferire. L’unico problema è che suddetti plugin si basano sulla corretta dichiarazione della presenza di javascript stesso da parte degli sviluppatori terzi. Cosa che, come puoi immaginare, non sempre avviene.

Inoltre, rimboccati le maniche e indaga ogni singolo plugin per stabilire se e come sia possibile rimuovere l’inclusione di JS (e CSS) dalle pagine in cui questo non sia strettamente necessario! cForms permette ad esempio di indicare l’ID numerico delle pagine in cui il form sarà incluso, ripulendo tutte le altre da una vagonata di codice assolutamente inutile.

4. Pochi ma buoni: seleziona i tuoi plugin

Ricordi quando parlavo di tenere aggiornato WordPress? Vale lo stesso anche per i tuoi plugin.
Un plugin aggiornato è  semplicemente più sicuro, efficiente e probabilmente leggero della sua versione precedente.

Questo blog utilizza da tempo solo una manciata di plugin. Sono meno di dieci, e fanno cose che oggettivamente non potrei replicare semplicemente con del codice.

Scegli i plugin che utilizzi con saggezza e prima di installare l’ennesimo plugin chiediti:

  • Posso ottenere lo stesso risultato (e sono in grado di farlo) con una funzione in PHP?
  • Sto già utilizzando plugin che in parte permettono di ottenere lo stesso risultato?
  • Qual è l’apporto di JS e CSS alle pagine del blog? Posso ridurlo dalle impostazioni?
  • Questo plugin contiene funzionalità aggiuntive di cui non sto facendo uso?

e soprattutto:

  • Ciò che voglio ottenere serve davvero ai miei lettori?

Puoi valutare le performance dei plugin installati sul tuo blog con il plugin P3 – Plugin Performance Profiler. In pochi click potrai valutare quale componente stia davvero pesando di più sulle tue pagine e procedere di conseguenza rimuovendo o migrando la funzionalità.

5. Usa gli sprite CSS

Creare sprite con i CSS è un’operazione tutto sommato semplice che ti consente di ridurre le richieste HTTP verso il tuo hosting. A fronte della snellezza guadagnata dalle tue pagine è necessario però che tu metta mano a qualche frammento del codice HTML/CSS che compone il tuo blog.

Esistono ottimi articoli (uno tra i più conosciuti, da A List Apart) che ti consentono di essere operativo nel giro di pochissime ore anche nei casi più complessi. Per i meno tecnici, esistono anche soluzioni (semi) automatiche: ne aveva parlato TomStardust diverso tempo fa.

6. Ottimizza le immagini rimanenti

Ora che hai sfruttato l’eleganza e la potenza degli sprite CSS, puoi dedicarti alle immagini che, per un motivo o per l’altro, non è stato possibile infilare nello sprite principale.

Puoi darle in pasto a tool automatici come Smush.it (di Yahoo), in grado di generarne una versione ottimizzata in un singolo click. Ne esiste anche una versione plugin. Se sei un amante della flessibilità e delle cose-decisamente-più-avanzate potresti trovare decisamente interessanti alcune tecniche di ottimizzazione intelligente di immagini in formato PNG e di immagini in formato JPG.

Ricorda inoltre di evitare quanto più possibile il ridimensionamento via HTML. Evita di caricare un’immagine di diverse centinaia di pixel di larghezza solo per presentarla poi come thumbnail.
Di nuovo, ne guadagnerai in leggerezza della pagina e reattività del browser nel comporla.

Se il tuo sito fa uso di PNG, TinyPNG è un potente alleato, il cui scopo è ridurre il peso dei tuoi file in PNG. Ti stupirai di valutare la differenza di peso di due immagini apparentemente indistinguibili una volta “tritate” dal suo algoritmo. Ne esiste anche una versione come plugin Photoshop per Windows e Mac.

7. Carica le immagini in differita con Lazy Load

Hai notato come su questo blog le immagini sembrino comparire mano a mano che si scende nella pagina? Ciò accade poiché le immagini vengono effettivamente richiamate solo quando queste si trovano nella porzione di finestra in cui l’utente sta guardando.

Può sembrare un “giocare sporco” nella lotta alla velocità più alta, poiché in effetti non riduce effettivamente il tempo di caricamento. Tuttavia, permette di incrementare certamente la velocità percepita. Ne ho scritto un dettagliato articolo qui: Come Ritardare il Caricamento delle Immagini con Lazy Load (jQuery)

8. W3 Total Cache

W3 Total Cache è in assoluto il plugin più efficace per generare una versione statica del tuo sito dove e quando serve. Supporta una vasta quantità di impostazioni ma anche “out of the box”, appena installato, viaggia che è una bellezza.

Per i più esperti sono disponibili setup per lavorare sulla cache lato browser, lato database, procedere alla compressione (minify) di codice Javascript, stili CSS e molto altro. Supporta l’impostazione di una Contente Delivery Network (CDN) in qualche manciata di click. Nel caso, ti consiglio CloudFlare.

9. Ripulisci la sidebar!

Come ultima cosa, sposta leggermente lo sguardo verso la sidebar del tuo blog e chiediti: “Ho davvero bisogno di tutta questa roba?”

  • Antipixel di aggregatori e community
  • Social widget dal caricamento sincrono
  • Tab multiple che recuperano elenchi su elenchi di articoli
  • Player multimediali & slideshow

…sono tutti elementi che, insieme vanno a appesantire come macigni la snellezza del tuo blog. Inoltre, contribuiscono anche a diluire la quantità di attenzione che ogni singolo lettore è disposto a dedicare alla tua sidebar.

Chiediti veramente quali sono le azioni che vorresti che i tuoi lettori compiessero sulla tua sidebar e rimuovi ogni cosa non sia funzionale a suddetti compiti.

Per chi stai ottimizzando il tuo blog?

Personalmente, credo che la messa a punto di WordPress sia uno degli aspetti da non sottovalutare nel curare un blog. Soprattutto perché se si possiedono anche solo minime conoscenze di base è possibile (con un po’ di buona volontà) ottenere ottimi risultati.

A conti fatti, questa si può dire una guida di quelle definitive?

Assolutamente no.
Credo di aver mentito, nel titolo! :D

Alcuni link li ho tenuti da parte (e li trovi poco più sotto), altri mi sono proprio sfuggiti. E sono davvero interessato a scoprire come altri blogger abbiano affrontato la questione. So di chi ha rimosso del tutto le anteprime dalla propria home, chi (più ferrato sul lato sistemistico della faccenda) ha messo mano a complesse configurazioni di Apache, Varnish e via discorrendo.

Ottimizzare il tuo blog non deve essere vista come un’attività da mettere in pratica solo per dare il contentino a Google. È invece un segno di rispetto verso i nostri lettori, di attenzione verso chi ti legge e sceglie di dedicarti ogni giorno numerosi (preziosi) minuti del proprio tempo.

Vale la pena pensarci, non credi? ;)

Qualcos’altro da leggere

Trovato questo articolo interessante?

Condividilo sulla tua rete di contatti Twitter, sulla tua bacheca su Facebook o semplicemente premi "+1" per suggerire questo risultato nelle ricerche in Google. Diffondere contenuti che trovi rilevanti aiuta questo blog a crescere. Grazie!

74 Commenti

Update 12/02/2012: Il Regolamento Commenti è cambiato! Leggi ciò che serve sapere!

  1. Ivan ha detto:

    Io con WP Cache and Super Cache ho migliorato parecchio, comunque una faticata all’inizio non salvava niente e andava in errore… chi la dura la vince.

    Io aggiungerei anche WP Autoptimize, che aiuta a sistemare i JS e CSS.

    Rispondi
  2. Jasha ha detto:

    C’è da chiedersi se andare a rimuovere a mano tutto il codice possibile php valga la pena rispetto al tempo che potremmo impiegare, ho una domanda: quanto il php incide effettivamente sui tempi di caricamento?

    Mettere mano a tutti i file richiede un paio di ore minimo, non vorrei che poi il risultato sia del tutto trascurabile in quanto il miglioramento è in termini di microsecondi :P

    Rispondi
    • Semmy ha detto:

      Be dipende ovviamente dal tipo di codice.
      Certo che se sono presenti componenti javascript (come ce ne sono tanti in joomla che conosco di più) che per ottenere determinati effetti settano timeout, la cosa influisce.
      Allo stesso modo se si tratta di componenti che caricano immagini.
      Il php sulle tempistiche dovrebbe infierire meno del javascript, essendo server side, certo che su un alto numero di link (che già è una cosa negativa per il SEO) se ogni volta deve richiamare un file di configurazione e cercare un qualche parametro, se pure si tratta di un operazione da pochi millisecondi, è pur sempre tempo buttato via.

      Rispondi
      • Jasha ha detto:

        Mi riferivo a wordpress e all’uso del php che viene comunemente fatto all’interno dei template più o meno professionali che si trovano in giro. Secondo me il ruolo del php è abbastanza ininfluente sui tempi di caricamento.

  3. iteand ha detto:

    manca la considerazione sulla velocità di chi naviga il sito, parte del punteggio è data anche da questo parametro.. è assurdo che lo sia, ma se hai molti visitatori con una connessione lenta influisce aimhè

    Rispondi
  4. ale ha detto:

    Ho diversi siti su Aruba. Per la compressione GZIP ho utilizzato il secondo metodo descritto qui http://it.federicomoretti.name/articoli/ridurre-i-tempi-di-caricamento-del-proprio-blog-con-apache-e-gzip/
    Sembra funzionare.

    Rispondi
  5. Riccardo ha detto:

    Bella guida! La compressione Gzip aiuta un sacco. Peccato che, tanto per citarne uno su tutti, Aruba non la permetta o non possa abilitarla (ho chiesto al loro servizio di assistenza).

    Rispondi
    • Paola ha detto:

      Eppure il mio sito che è su Aruba risulta usare Gzip…sebbene non abbia modificato nulla io.

      Tutti ottimi consigli, ma per molti di questi purtroppo è necessaria una conoscenza tecnica (sopratutto di Php) notevole…:((

      Rispondi
  6. Trucchi Facebook ha detto:

    Guida fantastica!!! :D Grazie mille!!!

    Rispondi
  7. Andrea Pernici ha detto:

    In realtà la velocità di chi naviga il sito non influenza la velocità di esecuzione degli script php perché questa è un operazione che viene effettuata lato server e quindi completamente indifferente all’utente finale ed anche ai motori di ricerca che vedono solo il risultato HTML finale.

    Il discorso in termini di performance si ottiene ovviamente su siti molto carichi che vedono di buon occhio una riduzione delle istruzioni PHP da eseguire…e a questo proposito è sempre possibile utilizzare ad esempio xcache che fa cache di php.

    Ovviamente questo discorso inizia ad essere importante solo su grossi numeri e solo se siete su un server che non ha molte risorse hardware.

    La complessità computazionale delle pagine infatti rimane la stessa sia che si eseguano 1 volta queste istruzioni (/nome-pagina) sia che le si eseguano 10000 volte.

    Quando si parla di complessità computazionale il tempo di esecuzione viene espresso in termini di numero di operazioni necessarie affinché l’algoritmo termini in modo da renderlo valido in tutti i tipi di calcolatori.

    Cosa significa questo ? Che la complessità computazionale di tutte le linee di codice che hanno complessità costante non vanno ad aumentare in nessun modo la complessità computazionale complessiva della pagina.

    Lo stesso vale per i cicli:

    Esempio 1:

    ciclo 1 – O(n)
    ciclo 2 – O(n)
    istruzione 1 – O(1)
    istruzione 2 – O(1)

    —-

    Complessità totale O(n)

    Esempio 2:

    ciclo 1 – O(n)
    ciclo 2 – O(n)
    ciclo 3 – O(n)
    ciclo 4 – O(n)

    —-

    Complessità totale O(n)

    Esempio 3:

    ciclo 1 – O(n^2)

    —-

    Complessità totale O(n^2)

    PER CONCLUDERE

    Esempio 1 e 2 hanno la stessa efficienza e complessità computazionale
    Esempio 3 ha una complessità computazionale maggiore e quindi meno efficiente.

    Anche io in un mio post sulla velocizzazione di WP ho incluso questo consiglio anche se ovviamente va applicato di caso in caso e senza aspettarsi chissà cosa.

    Rispondi
    • iteand ha detto:

      domanda?
      i dati raccolti dale varie toolbar es appunto google tolbar
      erano una volta (almeno qualche anno fa) influenzati dalla velocità dell caricamento pagina ovvero (anche se assurdo) dalla velocità della linea nella attribuzione di punteggio (forse poca roba ma cmq presente)
      adesso non è più cosi?

      Rispondi
      • Francesco Gavello ha detto:

        Questa sì che è una bella domanda! :D
        Sinceramente non ne ero affatto a conoscenza: chi sa, parli :P

      • Andrea Pernici ha detto:

        Da quello che ho capito io anche la funzione che si trova in webmaster tools relativa ai tempi di caricamento è basata effettivamente sul tempo di caricamento dei visitatori.

        Ne è una prova il fatto che vengono mostrati anche i tempi di caricamento delle pagine password protected e dunque aree riservate.

    • Francesco Gavello ha detto:

      Grazie mille Andrea, devo dire che hai esposto la situazione in maniera molto chiara!

      Interessante anche il post che riporti in firma, soprattutto quando parli di escludere selettivamente JS e CSS agendo solo su functions.php :)

      Rispondi
      • iteand ha detto:

        credo che ci fosse in un articolo di bernablog o (in uno dei blog però in inglese che dovrei avere fra i favoriti e non più fra i feed aihè) se lo trovo posto il link

      • Andrea Pernici ha detto:

        Grazie a te Francesco.

        Si il piccolo accorgimento per escludere JS e CSS in eccesso è un ottimo trucchetto che con facilità permette di guadagnare molto ;)

  8. gigicogo ha detto:

    Ottima lettura anche per un NON-Programmer come me.
    Domanda: template semplici, sobri e minimalisti che rispettino tutte le regole di semplicità e di minor carico?
    Ne hai da consigliare?
    Ciao

    Rispondi
  9. Fabs ha detto:

    Questo post non riesco a visualizzarlo né con Chrome 4 né con IE8, Opera 10 e Safari 4 (su Windoze XP). Lo vedo e riesco a commentare solo con Mozilla.

    Ho provato con Browsershots e conferma:
    http://browsershots.org/screenshots/856466448917f08cea6b2a50d45987f2/

    Rispondi
    • Francesco Gavello ha detto:

      Scusa Fabs, errore mio. Per la cronaca si trattava di un commento annidato nell’HTML che spezzava il layout. Ho ricontrollato proprio adesso con browsershot e sembra tornato tutto a posto.

      Grazie mille della segnalazione! ;)

      Rispondi
      • Fabs ha detto:

        Beh, ci mancherebbe di doversi scusare! Certo che dopo tanti anni di diffusione dell’HTML, dovere ancora controllare con diversi browser per evitare errori, pare incredibile… Ovviamente l’unico browser che “superava” l’errore è quello che usi tu, se no te ne saresti accorto!
        Temevo peggio, qualcosa tipo un pezzetto di HTML perso nel template o un errore generato da TinyMCE o qualcosa del genere.

  10. Fulvio ha detto:

    Io ero come in tanti altri su un server Aruba, super lento. Le mie pagine http://www.lepedanevibranti.it erano in puro HTML appena mi son spostato su un dedicato ho guadagnato in velocità, qualche settimana dopo ho notato una scalata della serp.
    Ho poi installato wordpress ed è interiormente migliorato il mio posizionamento. Ho infine dirottato su drupal ed ho avuto un decremento. Che dire ciò che dici è fondamentale velocità software e hardware sembrano piacere a The Big G. Il problema però nasce ad esempio quando hai uno shop che per quanto puoi fare, è sempre lento.
    Altra cosa, a gennaio ho avuto un problema con il server e ben 3 volte per mezza giornata sono stato irraggiungibile, a seguito di quei giorni Google mi ha abbassato nella serp. Ora la mia esperienza dice che la velocità è più importante di quanto si pensare, almeno parlando di siti ancora nell’ombra, diverso è x grandi siti. Amazon ed ePrice ad esempio sono estremamente lenti, dovuto ai mille script, Java e jquery nel caricamento, eppure sono posizionati benissimo, forse qui nn penalizza.

    Ciao a tutti

    Rispondi
    • Andrea Pernici ha detto:

      Ciao Fulvio…ricorda sempre che la velocità è solo un fattore tra i tanti e sicuramente nei casi Amazon (che non è affatto lento) ed ePrice non è determinante visto che hanno tonnellate di link e tutta un’altra serie di fattori importanti per Google.

      Un altro discorso è invece se il tuo sito risulta down…allora si che google ti declassa, ma è anche pronto a farti risalire se poi torna tutto alla normalità.

      Rispondi
  11. [...] Velocizzare WordPress: La guida (semi) definitiva per rendere più veloce il tuo blog Utili consigli per velocizzare il proprio blog. [...]

    Rispondi
  12. [...] gli utilizzatori di WordPress consiglio la lettura dell'articolo "Velocizzare WordPress: La guida (semi) Definitiva per rendere più veloce il tuo blog" scritto dall'amico Francesco [...]

    Rispondi
  13. iteand ha detto:

    Qualcuno ha mai usato total cache al posto di super cache?

    Rispondi
  14. maurizio ha detto:

    lato server ci sarebbero ancora parecchie cose da fare…
    giusto per citare qualcosa posso suggerire apc e/o memcache, expires header ed etag

    per chi volesse approfondire consiglio la lettura di questo libro “creare siti web ad alte prestazioni

    su server in cui sono presenti apc e/o memcache il plugin total cache potrebbe essere più performante in quanto riesce ad usare nativamente questi sistemi di cache.

    aggiungo ancora che lato wordpress a volte sarebbe meglio aggiungere qualche indice in più alle tabelle e poi ricordarsi di ottimizzarle di tanto in tanto (vedi wp-optimize).

    un ultima cosa: “WordPress Related Posts” non mi risulti abbia sistemi di cache rendendo lo un succhiarisorse notevole.
    Suggerisco “Yet Another Related Posts Plugin” che prepara una tabella di appoggio in cui sono già associati i “related post”

    Rispondi
    • Andrea Pernici ha detto:

      Ciao Maurizio hai ragione sulle cose da fare lato server, ma credo che tra APC e memcache sia migliore Xcache che carica molto meno la CPU rispetto ai due citati.

      Anche su Total Cache ci sono alcuni pareri discordanti sul web che lo considerano molto più resource-consuming.

      Rispondi
    • Antonio ha detto:

      Ciao :
      Io usavo per parecchio tempo in due miei siti ,uno con 16.000 pages al giorno, Yet Another Related Posts Plugin, per me andava benissimo finche Aruba mi ha bloccato il sito e dopo chiesto di eliminarlo, da problemi , infatti adesso il sito e molto più veloce, pero mi manca un plugin simile ma molto leggero,giusto per mettere qualche link in relazione al tema, gradirei dei vostri consigli . Grazie !
      Scusate il mio Italiano..

      Rispondi
  15. Stefania ha detto:

    Come si abilita la compressione Gzip?
    Chi ha una bozza di codice testato?

    Rispondi
  16. [...] Uno degli aspetti che google sta tenendo in considerazione per il posizionamento è la velocità di caricamento delle pagine. [...]

    Rispondi
  17. Alt Design Blog ha detto:

    Per lo sprite css delle immagini consiglio:
    http://spriteme.org/
    da provare!

    Ciao!

    Rispondi
  18. [...] 2 fasi, Francesco Gavello segnala strumenti, tecniche e plugin per WordPress utili a migliorare il caricamento del blog anche grazie alla pulizia del codice php e [...]

    Rispondi
  19. [...] Velocizzare WordPress: La Guida (semi) definitiva per rendere più veloce il tuo blog [...]

    Rispondi
  20. Gianni ha detto:

    Grazie per gli ottimi consigli!! certi li ho gia’ messi in pratica!

    Rispondi
  21. Internet blog ha detto:

    Ottimi consigli per ottimizzare wordpress.
    Uso sia w3 total cache che wp super cache plugin che sembrano entrambi ottimi.
    Uso a anche Xcache sul server ma mi sembra che alcuni sconsigliano di usare sia wp super cache che xcache.
    Voi che dite?
    Altra considerazione che vorrei fare in riferimento alla velocità che mi sembra non sia stata ancora fatta è relativa la database: averlo ottimizzato fa guadagnare di molto la performance.

    Rispondi
    • Francesco Gavello ha detto:

      Usi contemporaneamente W3 Total Cache e Wp Super Cache (sullo stesso blog, intendo)?

      Nel caso, ti consiglio di sceglierne uno soltanto, non saprei dire quanto due plugin di caching possano convivere insieme facendo la stessa cosa…

      (personalmente, consiglio il primo)

      Rispondi
  22. Annunci ha detto:

    Ciao Francesco,

    ho letto molte guide in merito alla velocizzazione di Blog basati su piattaforma WordPress, ma devo dire che questa è sicuramente la Migliore, per qualità e per Semplicità di Comprensione.

    Alcune Tecniche le conoscevo già, altre invece no, lo ho utilizzate e devo dire che hanno funzionato come si deve.

    Leggo spesso il tuo Blog e devo dire che è sicuramente uno dei Migliori del tuo Settore, Complimenti

    Rispondi
  23. Quadrrato ha detto:

    Salve,
    ho letto con interesse il tuo articolo e cercherò di applicare i tuoi consigli.
    Però ho alcune considerazioni da fare.

    Fase #1: Analisi .Punto 2
    Lavoro ormai da anni con Firebug (per me programmatore è indispensabile) ed avevo installato tempo fa Yslow.
    Per mia sfortuna, questo componente mi dava continui errori di visualizzazione nonchè di caricamento.
    Sono stato costretto a disinstallarlo.

    Fase #2: Azione .Punto 3
    Pur cercando di posticipare l’esecuzione degli javascript a fine pagina, quasi sempre risulta impossibile.
    Basti pensare che negli ultimi tempi google “consiglia” di inserire il codice di monitoraggio analytics nell’header della pagina.
    Inoltre, quasi sempre mi capica di eseguire chiamate ajax per visualizzare o meno semplici informazioni o intere porzioni di pagina (moduli).
    Avendo il timore di un blocco, di errori, etc inserisco il codice javascript sempre in alto.
    Sono sicuro che con un pò di esperienza e conoscenza in più si riesca ad ottimizzare il codice e la visualizzazione caricando codice javascript a fine pagina, ottenendo cosi i vantaggi da te elencati.
    Cose da imparare ne sono tante!
    Grazie per il bel post.

    Saluti, Quadrrato

    Rispondi
  24. gunawan ha detto:

    Mi sento molto robusto circa e vorrei saperne di più. Se va bene, come raggiungere la sapienza extra ampio, ti pensieri aggiungere altri articoli simili a questo con informazioni aggiuntive? Sarà estremamente utile e utile per me ei miei amici.
    Grazie per le informazioni

    Rispondi
  25. Giuseppe ha detto:

    Bell’articolo ,buoni consigli

    Rispondi
  26. alessio ha detto:

    E’ una guida fantastica!! Grazie ^^

    Rispondi
  27. Marmo ha detto:

    Grazie Informazioni molto utili e chiare. Spero di riuscire ad applicare tutte le informazioni per migliorare l’usabilita’ per i visitatori del mio sito.

    Rispondi
  28. Ciao Francesco,

    ho trovato la tua guida davvero molto utile e ben illustrata, utilizzo queste tecniche su molti siti che gestisco ed i vantaggi sono evidenti.

    Trucchetti utili anche per risparmiare soldini evitando di acquistare dei server semidedicati o virtuali.

    Grazie Mille.

    P.S. nel titolo c’è scritta “Semi-definitiva” ma quella definitiva quando arriverà :-) ?

    Rispondi
  29. Calcio Napoli ha detto:

    Ciao Francesco,

    ho seguito le tue indicazioni per alcuni Blog basati su WordPress e devo dire che i risultati si sono visti, hanno guadagnato molta velocità nel caricamento della Home e delle Singole Pagine.

    Ho avuto solo delle difficoltà con la configurazione del Plugin “WP Super Cache” che molte opzioni di configurazione ed in molti casi mi ha mandato in Carsh il Sito è ho dovuto eliminarlo, ed anche in quel caso ha lasciato delle “tracce” un po dappertutto….

    Grazie mille dei consigli!

    Rispondi
  30. per chi non volesse istallare plugin per la visualizzazione della velocità ecco qui

    https://developers.google.com/pagespeed/

    Rispondi
  31. iPhone 5 ha detto:

    Salve,
    anche il nostro portale è basato sulla piattaforma WordPress e ci sono stati dei mesi che avevamo picchi di utenti online anche di 300 utenti e con alcuni Plugin e consigli presenti in questo articolo abbiamo trovato dei notevoli giovamenti.

    Confermo che anche noi con il Plugin WP-Super-Cache abbiamo avuto dei problemi sia nella configurazione che nella corretta visualizzazione del Sito.

    Nel complesso ottima Guida, che potrebbe essere anche un po aggionata.

    Saluti

    Rispondi
  32. lo13 ha detto:

    ciao
    una cosa non capisco: analizzando il mio sito con gmetrix vedo che la velocità di caricamento va dai 4 sec (server Londra) ai… 7 sec (Vancouver) insomma non una scheggia. Ho seguito tutte le indicazioni suggerite per ottimizzare, tranne una che non so come applicare: ovvero la pagina richiede 50 azioni per caricarsi completamente
    Page load time: 3.63s
    Total page size: 1.43MB
    Total number of requests: 50
    vedo che sono soprattutto i molteplici JavaScript e CSS e anche tu suggerisci di unire tutti i Js in un unico file e minificare e la stessa cosa con i CSS ma io mi domando: come è possibile, quando ogni plug-in installato sul sito (uso wordpress) ha una sua cartella con uno o più css di riferimento e idem con i javascript?
    Ho provato anche a installare w3 supercache ma mi manda in tilt il sito, anche se deflaggo tutto ciò che concerne JavaScript non riesce più ad applicare gli stili…
    grazie per la spiegazione

    Rispondi
    • Fabs ha detto:

      lo13, a me WP Supercache non gira su un blog che ha i plug-in FeedBurner FeedSmith, FH More-Killer e Paged Comment Editing, e penso sia uno di questi a interferire, probabilmente il primo.

      Nel tuo caso probabilmente hai troppi plug-in “impegnativi” in termini di risorse e librerie chiamate, e anche 1.43 Mb complessivi sono tantissimi. Da ignorante direi che dovresti tentare di utilizzare una sola libreria JS, meglio se chiamandola dal repository di Google, che è una cosa che Google suggerisce e quindi probabilmente apprezza:
      https://developers.google.com/speed/libraries/devguide

      Questo perché se ci sono più chiamate alla stessa libreria probabilmente il browzzer la trova già in cache.

      Poi non ricordo bene ma è probabile che anche WP si serva di una sua libreria, forse JQuery, ho provato a guardare adesso dentro Jetpack ma non ho trovato niente (adesso lascio spazio a Francesco e altri più competenti di me),

      Rispondi
      • lo13 ha detto:

        intanto grazie per la risposta.
        Ho installato il plug-in Use Google Libraries, in modo da utilizzare le librerie Google, ma non cambia nulla…:

        il tempo di caricamento della home page resta lungo
        Page load time: 3.47s
        Total page size: 1.43MB
        Total number of requests: 49

        ad ogni modo, aggiungo l’url: http://goo.gl/JvDSg
        e anche i plugin installati e attivi:
        WP Minify
        Combine CSS
        Rush SEO
        Responsive Slider
        P3 (Plugin Performance Profiler)
        Custom Post Templates
        Contact Form 7
        Category Grid View Gallery

        mentre altri tipo total Cache sono inattivi proprio perché ingestibili…

        nb:

        se faccio la prova anche con altre pagine interne più leggere della homepage, Total page size: 302KB, i risultati non cambiano:
        http://goo.gl/NPHoR

        Page load time: 4.34s
        Total page size: 302KB
        Total number of requests: 26

  33. lo13 ha detto:

    … e se posso aggiungere: sempre GTMetrix mi suggerisce di chiedere al mio hosting di attivare Keep-Alive: io mi appoggio a VHosting e mi hanno risposto che non è disponibile… dovrei forse acquistare un server dedicato?
    boh…!

    Rispondi
  34. Danilo Petrozzi ha detto:

    Analisi ottima ma aggiungerei un paio di cose: c’è da fare distinzione tra i vari template disponibili per WordPress. Non è stato citato il fatto che numerosi template, ad esempio, caricano una quantità di .css nell’head spaventosa (generalmente inutile) e, sopratutto, creano una struttura di decine di indentati anche se dobbiamo visualizzare solo un menu, content e sidebar.. Ci sono temi (mi viene in mente Roots per WordPress) che ripuliscono quasi completamente i codici non necessari (sopratutto il css, nel caso di Roots affidato al framework Bootstrap).
    Salut!

    Rispondi
  35. Fabs ha detto:

    Moolto interessante Roots, serve un gran bel codice, me lo voglio studiare

    Rispondi
  36. miky ha detto:

    Post davvero interessante, rubo anche un po di notizie e link commentanti…e devo assolutamente contattare l’assistenza di Aruba…=S

    Rispondi
  37. Modello F24 ha detto:

    Ottimo Articolo e spigato nei minimi dettagli…

    Abbiamo adoperato alcune tecniche descritte e un miglioramento si è notato.

    Di base però crediamo che un sito per essere veloce e leggero lo debba essere fin dal codice con cui viene realizzato, è vero che molto spesso ci sono Temi che richiamano quantità di codice davvero inutile….

    Per quanto riguarda l’articolo secondo noi qualche piccolo aggiornamento non guasterebbe

    Rispondi
  38. Everlind ha detto:

    Complimenti per la guida, tutti suggerimenti utili.

    Penso comunque, che siano altrettanto importanti anche la scelta dell’Hosting e di un buon tema per velocizzare WordPress. Il primo, perchè a volte anche apportando varie ottimizzazioni, modifiche, se l’Hosting usa tecnologie poco performanti e moderne, non è ottimizzato per WordPress, difficilmente si avranno buone prestazioni. Esistono invece, Hosting in grado di fornire già di partenza, eccellenti prestazioni per script PHP/MySQL, come WordPress, utilizzando software come LiteSpeed, eAccellerator o APC, SSD (hard disk allo stato solido), fork di MySQL come Percona o MariaDB.

    Discreta importanza anche al tema, che in taluni casi, se strutturato male, poco aggiornato e con troppe funzionalità incorporate, può essere già di base la causa di rallentamenti. E’ bene puntare su un tema solido, aggiornato, ottimizzato e veloce; o un framework di qualità e valore, come ad esempio Genesis, Elegant Themes, etc.

    Ciao!

    Rispondi
  39. TechFan.it ha detto:

    Ciao Francesco,

    ho letto il tuo articolo perchè cercavo una guida per la configurazione di questo plugin e devo dire che l’articolo è davvero ben fatto, ho installato il Plugin per uno dei miei siti è funziona alla grande, dato che l’articolo è datato 2010 potresti considerare l’idea di aggiornare l’articolo aggiungendo informazioni in piu…..
    Comunque ottimo lavoro !!!!

    Rispondi
  40. Marco Cammilli ha detto:

    Lazy Load m’interessa particolarmente! Non lo conoscevo. Provo subito ad aggiungerlo al mio blog.
    Grazie 1000. Marco

    Rispondi
  41. Antonio Mecca ha detto:

    Come già suggerito, aggiungo anche io Gtmetrix per avere una perfetta conoscenza di tutti gli elementi che incidono sul caricamento del sito. La scelta di un buon host è a mio parere anch’essa importante ed oltre ai già validissimi consigli nei commenti e all’ottimo articolo di Francesco, suggerirei anche l’utilizzo di CDN. Esistono diverse soluzioni come http://www.maxcdn.com/ ed alcuni plugin per wordpress che si possono utilizzare.

    Rispondi
  42. Dario ha detto:

    Personalmente ho sempre ottenuto buoni risultati evitando di installare template farciti di funzioni grafiche e javascript. La mia ricetta è: temi semplici e leggeri, immagini ottimizzate con jpegmini.com e utilizzo di gzip. Con questa sistema ho sempre ottenuto punteggi sul Google Speed Analyzer superiori a 90.

    Rispondi
  43. Giuseppe ha detto:

    Ciao Francesco, bella rinfrescata all’articolo :)
    un punto fondamentale per velocizzare il proprio blog è la scelta dell’hosting. Io sono riuscito a raddoppiare la velocità del mio blog solamente scegliendo l’hosting giusto. Ho anche raccontato la mia esperienza in un post.
    Inoltre ti consiglio un altro strumento di misura della velocità: LoadImpact.com che fornisce un sacco di informazioni dettagliate su ogni singolo componente della pagina del blog.
    A presto
    Giuseppe

    Rispondi
  44. Dirò una cosa banale, ma considerate anche un altro punto di vista. Spesso ho visto imprenditori spendere migliaia di euro per lo sviluppo di un progetto web e 30 euro per il servizio hosting. A partire da qui vi scervellate (giustamente) per migliorare le performance relative ai tempi di apertura di pagina, ok. Ma non sarebbe meglio tenere conto a monte delle necessità in termini di risorse utili al progetto? Non sarebbe il caso di scegliere un server con caratteristiche di solidità tali da garantire al sito la sicurezza e l’affidabilità opportune? Non mi faccio capace di come sia possibile per un imprenditore rinunciare alla propria tranquillità in questo modo.

    Rispondi
  45. Simone Luce ha detto:

    Articolo interessante, ho seguito alcuni dei tuoi consigli che mi son ritornati utili. Buon articolo ;)

    Simone Luce

    Rispondi
  46. Fausto ha detto:

    Quoto ovviamente Francesco Margherita.
    Investire migliaia di euro nel progetto web e 50 euro per l’hosting è pura follia.
    Anche perchè investire 50 euro ti impone di installare plugin aggiuntivi al WordPress (come supercache e autoptimize), mentre – ad esempio – in Siteground basta che clicchi un’icona nel Cpanel (Optmize Website) ed hai già fatto metà del lavoro.

    Rispondi

Lascia un commento

Anteprima commentatore

Personalizza il tuo avatar!
Vai su gravatar.com e carica quello che preferisci!

I commenti sono modificabili entro 5 minuti dal loro inserimento.
Puoi usare questi tag: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Solo i commenti firmati con un nome saranno accettati. Leggi il Regolamento Commenti!