Avere un blog veloce e con le pagine che si caricano subito è uno dei fattori che sicuramente contribuiscono al suo successo. Anche se ha i migliori contenuti del mondo, un blog lento sicuramente farà scappare i lettori da qualche altra parte perchè è frustrante aspettare un secolo che si carichi una pagina, specialmente se quella notizia ti interessa davvero.
In quest’ottimo articolo ho trovato alcuni utili consigli su come ottimizzare al meglio WordPress 2.8 , la piattaforma di blog più usata al mondo che gira su PHP.
Testa la velocità del tuo blog
Puoi effettuare un test prima e dopo le modifiche in modo da vedere effettivamente se le modifiche apportate sono servite a velocizzare il tuo blog. Ci sono dei software appositi oppure puoi usare un piccolo pezzo di codice.
- Pingdom fa una veloce verifica visuale di tutti gli elementi del il blog e di da l’opportunità di vedere subito cosa rallenta di più il caricamento delle pagine, un immagine piuttosto che un widget o altro.
- YSlow è un plugin per firefox che in combinazione con Firebug analizza i 22 maggiori fattori di lentezza e ti da un voto da 1 a 100.
- Mostra il numero di query e il tempo necessario per lanciarle
<?php echo get_num_queries(); ?> queries in <?php timer_stop(1); ?> seconds.
Disabilita gli Hotlinking
Ogni volta che pubblichi un immagine stai consumando spazio, banda e RAM. Capita anche che qualcuno prende “in prestito” le tue immagini e i tuoi hotlink appensantendo ancora di più il tuo blog. Per risolvere basta aggiungere il seguente codice al tuo file htaccess e cambiare il sito example.com con il tuo dominio.
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?example.com/.*$ [NC]
RewriteRule .*.(gif|jpg|png|ico)$ – [F,L]
</ifModule>
Usare un hosting esterno per le immagini
Avere le immagini su un hosting esterno al nostro sito ridurrà di molto il consumo di risorse. Nel esempio sotto si vede come è diminuito l’uso della memoria da parte di WordPress spostando le immagini su un server esterno:
Comprimere Javascript
Comprimere i Javascript è molto semplice, dal momento che viene caricato ogni volta che viene vista una pagina si può ridurre la dimensione dei Javascript rimuovendo il “White Space”.Possiamo farlo via software con JavaScript Compressor.
Usa la Cache del Browser
La cache del Browser Cache di per se non renderà il tuo blog più veloce ma ridurrà lo sforzo sul server mantendendo nella cache oggetti che sono scaricati spesso (immagini o CSS)
Inserisci questo nel tuo file .htaccess :
FileETag MTime Size
<ifmodule mod_expires.c>
<filesmatch “.(jpg|gif|png|css|js)$”>
ExpiresActive on
ExpiresDefault “access plus 1 year”
</filesmatch>
</ifmodule>
Rimuovi o disabilita la revisione dei Post
Da WordPress 2.6 viene creata una revisione ogni volta che un post viene auto-salvato. Questo naturalmente fa si che le dimensioni del db aumentino ingiustificatamente.
Per disabilitare la revisione dei post aggiungiamo questa linea al wp-config.php:
define('WP_POST_REVISIONS', false);
Oppure lanciare questa query direttamente sul database dal pannello di amministrazione:
DELETE a,b,c
FROM wp_posts a
LEFT JOIN wp_term_relationships b ON (a.ID = b.object_id)
LEFT JOIN wp_postmeta c ON (a.ID = c.post_id)
WHERE a.post_type = ‘revision’
Usiamo i Plugin di WordPress giusti per aumentare le performance
WP Super Cache
WP Super Cache crea delle pagine HTML statiche per ogni “pagina” del blog anzichè interrogare di continuo il database. Questo fa aumentare la velocità di caricamento delle pagine del 45% e diminuisce lo stress del server.
PHP Speedy WP
Questo plugin si occupa della parte relativa alla compressione dei file CSS e Javascript. Al momento non è compatibile con WP Super Cache.
Optimize DB
Questo plugin ti permette di ottimizzare le tabelle MYSQL del database senza andare nel pannello di amministrazione di PHPmyadmin.
Grazie per questo articolo, Yslow e’ davvero utile!