Oggi è assolutamente FONDAMENTALE ottimizzare un sito web, anche per quanto riguarda le performance. Questo in ottica User Experience (sito web più veloce per gli utenti che navigano) e anche in ottica SEO, posizionamento nei motori di ricerca (crawl budget, non vogliamo e non possiamo far "sprecare" risorse al crawler di Google, Bing ecc, altrimenti non ci può premiare nei risultati).
Fra le ottimizzazioni generali delle performance (che ci fanno rispettare i famosi Core Web Vitals e in genere le metriche di Google Page Speed Insights) , abbiamo cose del tipo:
- scelta del tema (es. temi WordPress leggeri), usando un CMS come ad esempio WordPress, è importante valutare questo aspetto
- plugin utili e funzionali (anche qui, non installare 1000 plugin stupidi per funzionalità irrisorie, o magari anche duplicati, la pesantezza durante il caricamento ne risente molto)
- ottimizzazione delle immagini (spesso pesantissime e assolutamente non ottimizzatenelle dimensioni!!)
- minificazione/accorpamento del codice (CSS, JavaScript e PHP)
- preload, async, defer, lazy-load... Altri "strategemmi" che possono aiutare nel caricamento e migliorare l'esperienza utente
- revisioni di WordPress, pagine e articoli!!!
Revisioni di WordPress
Vediamo in dettaglio questo punto, le revisioni di WordPress (pagine, articoli). Una funzione a molti sconosciuta o comunque non si valuta l'impatto che essa può avere. Di default, le revisioni si salvano in automatico (poi spiego come intervenire per eliminarle/disattivarle) e alla lunga diventa controproducente. WordPress dovrebbe porre rimedio a questo, quantomeno limitandone il numero di default, dato che l'utente medio non ha le competenze.
Il meccanismo di base è questo:
- creo una pagina/articolo
- modifico la pagina/articolo, di default si genera una "revisione" quindi viene salvata in memoria sia la versione vecchia, sia quella nuova
- nel tempo (mesi, anni) ho modificato moltissime pagine/articoli, quindi un'infinità di revisioni totali
- ogni volta che si crea una revisione, viene aggiunta una nuova riga alla tabella wp_post del database del sito web
- se nel tempo ho creato 1000 revisioni ormai "inutili", senza saperlo, il database alla fine diventa pesantissimo!!!
- il database che contiene tutte queste revisioni, viene caricato ogni volta... chiediamoci se la cosa ha senso o meno!
Quindi, abbiamo capito l'importanza quantomeno di LIMITARE il numero di revisioni. La cosa è semplicissima, occorre scrivere questo codice all'interno del file wp-config.php che si trova nella cartella principale del proprio sito web.
define( 'WP_POST_REVISIONS', 3 );
define('WP_POST_REVISIONS', false );
DELETE FROM wp_posts WHERE post_type = "revision";
Il primo, limita a 3 il numero massimo di revisioni (più che ragionevole, 2 o 3).
Il secondo, disabilita completamente le nuove revisioni.
Il terzo, elimina tutte le revisioni attualmente presenti (altrimenti i cambiamenti riguardano i prossimi aggiornamenti, non è retroattivo) ed è in realtà una SQL String.
Mi è capitato di vedere siti web che nel corso degli anni hanno creato 100+ pagine (cosa normalissima) e alcune di queste pagine avevano anche 200 revisioni, tutte salvate in memoria e il database deve caricarle ogni volta, non so se mi spiego. Poi ci si chiede perché avevano prestazioni DISASTROSE, sito web lentissimo con tutti i problemi che ne derivano.
Revisioni WordPress - la scelta da fare
Allora, qui ci metto del mio. Io sono molto performance-oriented, attenzione ossessiva alle performance (che poi comunque viene anche ripagata!) quindi la mia idea è disabilitare completamente le revisioni.
Posso capire che all'utente medio possa far comodo salvare una revisione (quindi limitare il numero a 1-2, già 3 direi che è oltre), in questo modo se si modifica una pagina, si può facilmente tornare indietro (cambio idea, eventuale "errore", ecc) cliccando sulla revisione precedente, senza dover rifare le cose da zero.
Soluzione alternativa (backup) anche senza revisioni
La soluzione che preferisco anche in questo caso è quella di non usare le revisioni, ma fare un banale copia-incolla della pagina da modificare, dall'editor, quindi se si vuole fare una "modifica pesante" che potrebbe incidere sulla struttura della pagina o altro e si preferisce avere un backup della vecchia versione, consiglio di salvare la vecchia pagina in locale (un banale copia-incolla dall'editor). Nel caso poi ci fossero problemi o si cambi idea, con un copia-incolla ripristini la versione precedente. In pratica equivale anche questo ad una revisione, ma ha il vantaggio di mantenere il database leggero e ottimizzato, migliore esperienza utente e vantaggi anche nel posizionamento su Google, Bing e i vari motori di ricerca avendo di fatto un sito web più leggero e ottimizzato.