
Come eliminare le vecchie revisioni di WordPress: 4 passaggi
Il tuo database WordPress è cresciuto a dismisura, il pannello di amministrazione è diventato lentissimo e il backup ha raggiunto le dimensioni di un archivio di un sito di medie dimensioni? Probabilmente la causa sono le revisioni: le copie bozza di ogni salvataggio che il motore accumula nel corso degli anni.
Una singola pagina raccoglie decine di modifiche nel corso della sua vita. Moltiplica questo per centinaia di articoli e ti ritroverai con gigabyte di spazzatura in wp_posts. Peggio ancora, le revisioni sono memorizzate nella stessa tabella dei contenuti pubblicati, quindi ogni record in più rallenta le query.
Ecco quattro modi per ripulire le vecchie versioni dal tuo database: da un plugin sicuro fino all'SQL diretto. Più un trucco extra che impedirà al disordine delle revisioni di ripresentarsi.
💡 Panoramica rapida:
- WP-Sweep, la strada più sicura: il plugin rimuove le revisioni usando le funzioni native di WordPress senza query dirette al database.
- wp-config.php, tre righe di codice disabilitano o limitano completamente il salvataggio delle bozze a livello di motore.
- Query SQL, pulizia immediata con una singola query; richiede un backup completo del database prima dell'esecuzione.
- Intervallo di salvataggio automatico, non elimina ciò che si è già accumulato ma rallenta drasticamente la crescita futura delle revisioni.
Step 1: Rimuovere le revisioni con il plugin WP-Sweep
Il metodo più semplice e sicuro per chi preferisce non toccare il codice. WP-Sweep richiama le funzioni native di WordPress (wp_delete_post_revision) e non scrive query dirette, quindi il rischio di danneggiare il database è minimo.

Installazione standard:
- Vai a Plugin → Aggiungi nuovo.
- Cerca WP-Sweep, clicca su Installa e poi su Attiva.
- Apri Strumenti → Sweep.
- Trova la riga Revisioni e clicca il pulsante Sweep.
Il plugin mostrerà quante revisioni sono state eliminate e quanto spazio è stato liberato. Oltre alle revisioni, WP-Sweep può pulire i commenti spam, le bozze di salvataggio automatico, i termini di tassonomia inutilizzati e i meta field orfani, tutto tramite l'API nativa di WordPress.
Step 2: Disabilitare le revisioni via wp-config.php
Se non hai affatto bisogno delle revisioni, disabilitale con una singola riga. Individua il file wp-config.php nella root del tuo sito e aggiungi il codice prima della riga /* That's all, stop editing! */:
1 define( 'WP_POST_REVISIONS', false );

Dopo questa modifica, WordPress smetterà di salvare le bozze a ogni salvataggio automatico e a ogni clic su "Aggiorna". Nel database rimarrà solo l'ultima versione di ogni articolo.
Nota che questa riga non elimina le revisioni già accumulate; impedisce solo la creazione di nuove. Pulisci il disordine esistente con lo Step 1 o con la query SQL bonus qui sotto.
Per riabilitare le revisioni, sostituisci false con true o semplicemente rimuovi la riga.
Step 3: Limitare il numero di revisioni
La disabilitazione totale non è per tutti. Se un team editoriale di tre persone modifica lo stesso articolo e ha bisogno di una cronologia delle modifiche, è meglio non disattivare le revisioni ma limitarne il numero.
Aggiungi quanto segue a wp-config.php prima della riga /* That's all, stop editing! */:
1 define( 'WP_POST_REVISIONS', 3 );
Il numero 3 indica che WordPress mantiene un massimo di tre versioni recenti per ogni articolo. Una quarta revisione sovrascriverà la più vecchia, così il database non continuerà a crescere.

Per la maggior parte dei siti, tre revisioni sono più che sufficienti. Se pubblichi articoli lunghi con decine di iterazioni, imposta 5 o 10. Non c'è un limite; puoi specificare qualsiasi numero intero.
Step 4: Modificare l'intervallo di salvataggio automatico
Per impostazione predefinita, WordPress salva una bozza ogni 60 secondi. Durante una modifica attiva, questo crea decine di revisioni all'ora. Puoi allungare l'intervallo in modo che i salvataggi automatici avvengano meno spesso e il database cresca più lentamente.
Aggiungi quanto segue a wp-config.php:
1 define( 'AUTOSAVE_INTERVAL', 600 );

Il valore 600 è in secondi (10 minuti). Con questa impostazione, una bozza viene scritta nel database una volta ogni 10 minuti invece che ogni minuto. Il minimo accettato da WordPress è 60 secondi; il massimo consigliato è 3600 (un'ora).
Questo trucco non pulisce le revisioni esistenti ma riduce drasticamente l'accumulo di nuove. Combinalo con il limite dello Step 3 per ottenere un database pulito senza pulizie manuali regolari.
Bonus: Eliminare le revisioni direttamente con una query SQL
La strada più veloce se la pulizia tramite plugin non è un'opzione per qualche motivo. Attenzione: questa query è irreversibile. Prima di eseguirla, fai un backup completo del database tramite phpMyAdmin, WP-CLI o un plugin di backup.
Prima, una prova sicura per vedere quante revisioni saranno interessate senza eliminarle:
1 SELECT COUNT(*) FROM wp_posts WHERE post_type = 'revision';
Se il prefisso della tua tabella non è wp_, sostituiscilo con il tuo (controlla wp-config.php, la riga $table_prefix).
Una volta confermato che il numero è ragionevole, esegui l'eliminazione:
1 DELETE FROM wp_posts WHERE post_type = 'revision';
La query rimuove tutte le revisioni da tutti gli articoli in un colpo solo. Dopodiché, il database sarà immediatamente più leggero, specialmente sui siti più datati con centinaia di pagine.
Cosa la query non tocca: articoli pubblicati, bozze (post_status='draft'), pagine, allegati, menu e il cestino. Interessa strettamente i record con post_type='revision', che il motore usa solo per memorizzare le versioni.
⁉️🤔 Domande frequenti
Le revisioni influiscono davvero sulla velocità del sito?
Sì, ma indirettamente. Le revisioni stesse non vengono caricate nel front end; risiedono in
wp_postse aumentano la dimensione complessiva della tabella. Su un sito con oltre 10.000 record, ogni migliaio di righe in più rallenta le queryWP_Query, specialmente senza una cache a oggetti (Redis). Dopo aver pulito le revisioni, la differenza è percepibile nel pannello di amministrazione e durante il salvataggio degli articoli.
È sicuro eliminare le revisioni con un plugin?
WP-Sweep è sicuro proprio perché non scrive query SQL dirette. Richiama
wp_delete_post_revision(), la stessa funzione che WordPress invoca quando si elimina una bozza normalmente. Resta comunque valida la regola "fai un backup prima di qualsiasi operazione sul database".
Cosa succederà ai salvataggi automatici dopo aver disabilitato le revisioni?
I salvataggi automatici continueranno a funzionare; sono tecnicamente un meccanismo separato. WordPress mantiene un salvataggio automatico per articolo (l'ultimo), e questo viene sovrascritto, non accumulato. Disabilitare le revisioni tramite
WP_POST_REVISIONSnon influisce sui salvataggi automatici. ModificareAUTOSAVE_INTERVAL, invece, li controlla direttamente.
Posso eliminare le revisioni solo per tipi di contenuto specifici?
Sì, tramite il filtro
wp_revisions_to_keep. Aggiungi quanto segue al filefunctions.phpdel tuo tema o a Code Snippets:
1 add_filter( 'wp_revisions_to_keep', function( $num, $post ) { 2 if ( 'product' === $post->post_type ) { 3 return 0; // do not keep revisions for WooCommerce products 4 } 5 return $num; 6 }, 10, 2 );
Questo codice disabilita le revisioni solo per i prodotti, lasciando il comportamento predefinito per articoli e pagine. Per l'eliminazione in blocco delle revisioni già accumulate di un tipo specifico, usa l'SQL con una condizione su
post_parent.
Perfmatters sostituisce WP-Sweep?**
Perfmatters è un plugin commerciale per le performance, e la gestione delle revisioni è solo una delle sue oltre 40 funzionalità. Può limitare il numero di revisioni (in modo simile a
WP_POST_REVISIONS) e pulirle a intervalli programmati. Ma se hai bisogno solo della pulizia delle revisioni, WP-Sweep è completamente gratuito e svolge il lavoro altrettanto bene. Perfmatters ha senso quando hai bisogno anche del lazy loading, della disabilitazione degli script emoji e di altre opzioni di performance avanzate.
Devo pulire le revisioni su un sito nuovo?
Su un sito fresco con una dozzina di articoli, le revisioni occupano kilobyte, quindi non ha senso pulirle. Ma prendi l'abitudine: se prevedi di bloggare attivamente, imposta subito un limite
WP_POST_REVISIONSdi 3-5. Non dovrai gestire il disordine in futuro.
Cosa scegliere per la tua situazione?
Matrice rapida:
- Vuoi una pulizia sicura e veloce senza codice → WP-Sweep (Step 1) + limita le revisioni a 3 (Step 3).
- Non hai bisogno di revisioni e lavori da solo → disabilita via
WP_POST_REVISIONS, false(Step 2). - **Database enorme, il plugin è lento sul tuo **hosting → query SQL dalla sezione bonus (rigorosamente dopo un backup).
- Già pulito, vuoi mantenerlo tale → limite revisioni di 3-5 (Step 3) + intervallo di salvataggio automatico di 300-600 secondi (Step 4).
Dedica cinque minuti ora e il tuo database smetterà di gonfiarsi nel corso degli anni. Se il sito è ancora lento dopo aver pulito le revisioni, dai un'occhiata ad altri modi per velocizzare WordPress: la cache delle query e un tema leggero spesso danno una spinta maggiore rispetto alla rimozione delle revisioni.



