I lettori più attenti, si saranno certamente accorti di un problema che affliggeva SKB.org da un po’ di tempo: i caratteri accentati (“è”, “ò” etc…) o speciali (virgolette a doppio apice “, e a singolo ‘) venivano sostituiti da caratteri illeggibili.
Nel mio caso, un rombo con un punto interrogativo “?” al centro. Ciò comporta, oltre che un errore di sintassi nel caso delle specifiche XHTML 1.1, anche un grosso problema alla accessibilità stessa del contenuto, che doveva quasi essere interpretato e riletto per capire quale poteva essere la lettera che magari completava il discorso.
Il problema, potrebbe essere stato provocato da una estensione mal aggiornata o configurata. Ma come risolvere senza essere costretti (come nel mio caso) a modificare oltre 2000 commenti e oltre 900 articoli a mano?
La soluzione più semplice ed immediata a questo problema, la offre il file “wp-config.php“; per intenderci, il file che tutti noi abbiamo modificato per installare WordPress con nome e password del database, quello che si trova solitamente nella directory di ogni installazione.
Non molti sanno che proprio wp-config può imporre a WordPress di usare una determinata codifica del testo, alla faccia di tutti i plug-in e le configurazioni che provano a modificarla portando solo guai.
La funzione “DB_COLLATE“, infatti, fa proprio al caso nostro!
Basterà inserire quindi un “define(‘DB_COLLATE’, ‘utf8_general_ci’);” (senza virgolette a doppio apice) nel nostro “wp-config.php” per risolvere il problema.
Ovviamente, è possibile aprire il file “wp-config.php” con un qualunque editor di testo (che sia Blocco Note o Notepad++) e al posto di “utf8_general_ci” è possibile inserire qualunque altra codifica per i caratteri.
Come potrete notare, tutti i commenti e gli articoli che avevano quei fastidiosissimi difetti torneranno alla normalità senza il minimo sforzo!