Как изменить значение lang="en-US" в HTML-документе?
Я заметил, что в теге <html> на моем сайте WordPress язык определен как американский английский.
<html lang="en-US" prefix="og: http://ogp.me/ns#">
Я хотел бы изменить его на британский английский en-GB, но не уверен, какой способ лучше.
Я покопался и нашел language_attributes() в general-template.php, который делает вызов к get_bloginfo('language'). Я мог бы вручную вставить значение здесь, но это не кажется лучшим способом.
Какой правильный способ изменить это значение?
Значение этой строки обычно берется из опции WPLANG в таблице базы данных $prefix_options. Вы можете задать его в панели управления в разделе Настройки/Общие (wp-admin/options-general.php) или через SQL.
Существует несколько способов изменить это значение с помощью PHP:
Создайте глобальную переменную
$localeв вашем файлеwp-config.php:$locale = 'ru_RU';Объявите константу
WPLANGв вашем файлеwp-config.php:define( 'WPLANG', 'ru_RU' );Этот способ устарел, но все еще работает.
Используйте фильтр
locale:add_filter( 'locale', function() { return 'ru_RU'; });Это очень гибкий способ, так как вы можете добавить дополнительные условия в эту функцию, например проверку ID текущего сайта в мультисайте.
Что касается последних версий WordPress 4+, решение, представленное здесь, устарело. Пожалуйста, ознакомьтесь с моим ответом здесь для получения более подробной информации
Ответ должен быть больше, чем просто ссылка. Пожалуйста, добавьте решение.
fuxia