Velocizza WordPress con questi semplici accorgimenti che ti aiuteranno a migliorare le prestazioni del tuo sito e a ridurre i tempi di caricamento.
Col passare del tempo, il tuo sito WordPress può diventare sempre più lento. Questo accade perché ogni plugin o tema installato spesso lascia tracce nel database, anche dopo la loro rimozione. Opzioni non più utilizzate, tabelle dimenticate e impostazioni caricate automaticamente possono appesantire il sistema, aumentando i tempi di caricamento e rallentando l’area di amministrazione.
Vedremo come ottimizzare il database del tuo sito WordPress intervenendo direttamente su wp_options, riducendo il numero di opzioni con autoload attivo e rimuovendo manualmente quelle obsolete tramite phpMyAdmin. Inoltre, ti guiderò nell’individuazione e nell’eliminazione delle tabelle inutilizzate, liberando spazio prezioso e migliorando le prestazioni del sito.
Se vuoi un WordPress più veloce e reattivo, segui questi consigli e vedrai subito la differenza!
Utilizzare il plugin Query Monitor per ricavare le query lente
Query Monitor è un fantastico plugin che, una volta attivato, abilita il debug delle query del database, errori PHP, hooks e azioni, chiamate HTTP API e molto altro.
È sufficiente ricaricare la pagina e nella barra di amministrazione in alto verranno forniti i dati di caricamento con le informazioni.
Ho analizzato in particolare le query più lente e mi è saltata subito all’occhio la seguente query:
SELECT option_name, option_value
FROM wp_options
WHERE autoload IN ( 'yes', 'on', 'auto-on', 'auto' )
wp_load_alloptions()
Core di WordPress rows affected 1315 time 0,8
La query carica tutte le opzioni autoloaded dalla tabella wp_options
. Se sono presenti molte opzioni con l’autoload il sito potrebbe risultare molto rallentato.
Collegarsi quindi al database del proprio sito WordPress tramite phpMyAdmin ed eseguire la seguente query per visualizzare il totale delle opzioni con autoload:
SELECT COUNT(*) FROM wp_options WHERE autoload = 'yes';
Se il conteggio è superiore a 500, significa che hai troppe opzioni con autoload.
Con la seguente query ho individuato le opzioni più grandi (adattare il limit in base alle proprie esigenze):
SELECT option_name, LENGTH(option_value) AS size
FROM wp_options
WHERE autoload = 'yes'
ORDER BY size DESC
LIMIT 20;
Se non è necessario che una certa opzione venga caricata in tutte le pagine è possibile impostarla a No (se non ne sei sicuro puoi chiedere sul forum di supporto di WordPress.org).
Se non sei sicuro a quale plugin l’opzione si riferisce prova a fare una ricerca su Internet con il nome dell’opzione.
Attenzione: prima di eseguire qualsiasi operazione sul database effettuare un backup!
UPDATE wp_options SET autoload = 'no' WHERE option_name = 'example_option';
Inoltre potreste avere diverse opzioni che non vengono più utilizzate dovuti a plugin che avete precedentemente installato e poi disinstallato, questo perché diversi plugin non eliminano completamente i dati dal database.
Se siete sicuri di avere opzioni non più utilizzate, potete tranquillamente eliminarle anziché impostare l’autoload su No, ciò velocizza WordPress di molto, oltre a mantenere il database più pulito.
DELETE FROM wp_options WHERE option_name IN ('option1', 'option2');
Oppure per cancellare tutte le opzioni che contengono un certo nome
DELETE FROM wp_options WHERE option_name LIKE '%optionname%';
Dopo aver impostato l’autoload su No per le opzioni che non era necessario venissero automaticamente caricate ed eliminato le opzioni non più utilizzate il tempo di caricamento nell’area di amministrazione di WordPress del mio sito è passato da 14-15 secondi a 2-3 secondi!

Individuare ed eliminare le tabelle non più utilizzate
Visualizzare tutte le tabelle del database:
SHOW TABLES;
Le tabelle core di WordPress sono le seguenti:
wp_options
wp_users
wp_usermeta
wp_posts
wp_postmeta
wp_terms
wp_termmeta
wp_term_taxonomy
wp_term_relationships
wp_comments
wp_commentmeta
wp_links
Qualsiasi tabella aggiuntiva potrebbe riferirsi a plugin o tema.
Il modo più semplice è quello di cercare su Internet il nome delle tabelle che non fanno parte del core di WordPress e vedere a quale plugin/tema si riferiscono.
Se una tabella è relativa ad un tema/plugin non più utilizzato potete eliminarla in sicurezza:
DROP TABLE table1;
I plugin spesso salvano i dati in wp_options
, wp_postmeta
, wp_usermeta
, wp_termmeta
, ecc…
Per controllare le referenze alla tabella, effettuare una ricerca nella tabella dei metadati:
SELECT * FROM wp_options WHERE option_value LIKE '%table1%';
SELECT * FROM wp_postmeta WHERE meta_value LIKE '%table1%';
SELECT * FROM wp_usermeta WHERE meta_value LIKE '%table1%';
SELECT * FROM wp_termmeta WHERE meta_value LIKE '%table1%';
Se esistono referenze è possibile eliminarle, questa operazione velocizza WordPress ulteriormente.
DELETE FROM wp_options WHERE option_value LIKE '%table1%';
DELETE FROM wp_postmeta WHERE meta_value LIKE '%table1%';
DELETE FROM wp_usermeta WHERE meta_value LIKE '%table1%';
DELETE FROM wp_termmeta WHERE meta_value LIKE '%table1%';
Dopo aver eliminato le referenze ottimizzare le tabelle dei metadati del database.
Velocizza WordPress un plugin per la pulizia automatica del database
Esistono diversi plugin a questo scopo, io personalmente ho scelto Advanced Database Cleaner.

Nella schermata General clean-up è possibile cancellare elementi relativi alle revisioni, bozze, post meta orfani, ecc…
La tab Tables invece mostra le tabelle che necessitano di ottimizzazione.
Nella tab Options è possibile visualizzare tutte le opzioni (quelle presenti nella tabella wp_options
) con indicato se vengono caricate automaticamente oppure no.
Purtroppo per ricavare le informazioni più utili come ad esempio le opzioni orfane occorre acquistare la versione Pro del plugin sul sito dello sviluppatore.
Velocizza WordPress con questi consigli generali
- Usare solo i plugin strettamente necessari.
- Verificare se esistono alternative più leggere a quelli già in uso.
- Se si vuole provare le funzionalità di un plugin installarlo possibilmente su un sito di test / stage.
- Quando si rimuove un plugin, verificare se esiste un’opzione per disinstallarlo eliminando completamente i dati.
Nel caso non esistesse verificare se e quali dati (es. opzioni, tabelle) il plugin inserisce nel database e procedere con la rimozione manuale tramite phpMyAdmin una volta eliminato il plugin.
Se non sai esattamente quali dati inserisce puoi chiedere nel forum di supporto del plugin su WordPress.org oppure cercare il plugin su https://plugintests.com (se presente vedere le informazioni della sezione “Additions”). - Utilizzare periodicamente un plugin di pulizia e ottimizzazione database.
Queste raccomandazioni aiuteranno a mantenere il tuo sito WordPress veloce, ottimizzato e privo di dati inutili!