Come cambiare il valore lang="en-US" del documento HTML?
Ho notato che nel tag <html> sul mio sito WP la lingua è definita come inglese americano.
<html lang="en-US" prefix="og: http://ogp.me/ns#">
Vorrei cambiarla in inglese britannico en-GB ma non sono sicuro del modo migliore.
Ho fatto delle ricerche e ho trovato language_attributes() in general-template.php che effettua una chiamata a get_bloginfo('language'). Potrei inserire manualmente il valore qui ma non sembra il modo migliore per farlo.
Qual è il modo corretto per cambiare questo valore?
Il valore per quella stringa è normalmente preso dall'opzione WPLANG nella tua tabella del database $prefix_options. Puoi impostarlo nel backend sotto Impostazioni/Generali (wp-admin/options-general.php) o via SQL.
Ci sono diversi modi per cambiare quel valore via PHP:
Crea una variabile globale
$localenel tuowp-config.php:$locale = 'it_IT';Dichiara la costante
WPLANGnel tuowp-config.php:define( 'WPLANG', 'it_IT' );Questo metodo è deprecato, ma funzionerà comunque.
Filtra
locale:add_filter( 'locale', function() { return 'it_IT'; });Questo è un modo molto flessibile, perché puoi aggiungere più condizioni a quella funzione, ad esempio controllare l'ID del sito corrente in una installazione multisite.
Per la versione recente di WordPress 4+ la soluzione fornita qui è deprecata, controlla la mia risposta qui per maggiori dettagli
Una risposta dovrebbe essere più di un semplice link. Per favore, aggiungi una soluzione.
fuxia