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
$locale
nel tuowp-config.php
:$locale = 'it_IT';
Dichiara la costante
WPLANG
nel 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.
