A mio avviso una delle parti mal riuscite di WordPress risiedono nel pessimo utilizzo della tabella wp_options nel DataBase. Questa tabella di fatto è piuttosto delicata poiché è il luogo dove vengono memorizzati dati piuttosto importanti, come ad esempio le impostazioni del sito, le impostazioni dei permalink, quali plugin sono accesi e quali spenti, eccetera.
Purtroppo oltre alle informazioni base di per se innocue, questa tabella è utilizzata praticamente dalla quasi totalità dei plugin e temi per le loro esigenze. Siccome sono pochissimi i componenti di terze parti che offrono una disinstallazione dei dati all’interno del Database, queste informazioni giacciono silenti ed inutilizzate. Recentemente WordPress stessa è intervenuta per quanto riguarda i temi grafici. Dopo la disinstallazione esiste un periodo di “grazia” di trenta giorni, scaduti i quali le informazioni vengono cancellate. Anche qui però non tutto è lineare, moltissimi temi grafici un po’ più articolati utilizzano dei framework proprietari, che funzionano come dei veri e propri plugin, le cui informazioni inutilizzate rischiano di appesantire il database.
Non ultimo esistono tutta una serie di informazioni più volatili che sono anch’esse registrate in wp_options; ad esempio le notizie di WordPress nella pagina di amministrazione, così come molte componenti che fungono da cache ai plugin, solitamente registrate con la voce _transient. Capita che se il server è in affanno, oppure nel caso di shared hosting non ci sia sufficiente memoria, tali informazioni rimangano orfane o non più gestibili dalla funzione che le ha generate, rimanendo come zombie, sul groppone del MySql.
Quanto descritto sopra di solito si può riscontrare in installazioni piuttosto anziane, diciamo dai cinque anni in su, e quelle che hanno subito molti rimaneggiamenti, in particolare per chi ha fatto esperimenti con plugin attraverso attivazioni e disattivazioni selvagge.
Purtroppo non esiste una rigenerazione della tabella wp_options, tanto più che in una occasione mi sono trovato proprio una installazione con questa tabella corrotta, ed è stato piuttosto complicato rimettere in pista il sito.
La migliore cosa da fare è dare uno sguardo alla tabella wp_options, solitamente lo si fa da phpmyadmin, solo che quest’ultimo non permette di vedere molto bene la situazione. Per farlo in modo più semplice e costruttivo esiste una pagina “segreta” di WordPress, che si chiama options.php.
In pratica aggiungete options.php dopo la URL del vostro sito in amministrazione. Ad esempio sito.mio/wp-admin/options.php e apparirà un riepilogo di quello che contiene la famigerata tabella wp_options. Ovviamente dovete avere il ruolo di superadmin per accedere a questa pagina.
La pagina si presenta come una sorta di elenco in modalità chiave – valore, dove il valore è per giunta modificabile. Cosa che francamente vi sconsiglio, a meno che non sappiate esattamente cosa state facendo. Più che altro questa pagina può essere utile per scovare, attraverso la memoria storica di chi ha gestito il sito viceversa si andrebbe letteralmente a casaccio, tutte quelle chiavi dimenticate e non necessarie. Alcune sono facili perché i nomi dei campi sono cosiddetti “parlanti” magari con il nome del plugin esteso, altre sono più criptiche e magari solo leggendo il valore, anziché la chiave, possiamo comprendere che si tratta di una informazione vecchia.
Una volta preso nota delle chiavi da eliminare, e dopo aver fatto un backup preventivo, si può cercarle ed eliminarle agevolmente da phpmyadmin.
walterconte
Ho così tante opzioni che il mio WordPress non le carica proprio… non ce la fa 😀
Walter Tosolini
Purtroppo può succedere specie se il wordpress è anziano e vissuto. In quel caso l’unica soluzione è andare attraverso phpmyadmin, oppure se hai un server tuo utilizzando dbeaver.