Как изменить значение lang="en-US" в HTML-документе?

20 окт. 2013 г., 20:54:30
Просмотры: 27.4K
Голосов: 8

Я заметил, что в теге <html> на моем сайте WordPress язык определен как американский английский.

<html lang="en-US" prefix="og: http://ogp.me/ns#">

Я хотел бы изменить его на британский английский en-GB, но не уверен, какой способ лучше.

Я покопался и нашел language_attributes() в general-template.php, который делает вызов к get_bloginfo('language'). Я мог бы вручную вставить значение здесь, но это не кажется лучшим способом.

Какой правильный способ изменить это значение?

0
Все ответы на вопрос 2
0
13

Значение этой строки обычно берется из опции WPLANG в таблице базы данных $prefix_options. Вы можете задать его в панели управления в разделе Настройки/Общие (wp-admin/options-general.php) или через SQL.

Существует несколько способов изменить это значение с помощью PHP:

  1. Создайте глобальную переменную $locale в вашем файле wp-config.php:

    $locale = 'ru_RU';
    
  2. Объявите константу WPLANG в вашем файле wp-config.php:

    define( 'WPLANG', 'ru_RU' );
    

    Этот способ устарел, но все еще работает.

  3. Используйте фильтр locale:

    add_filter( 'locale', function() {
        return 'ru_RU';
    });
    

    Это очень гибкий способ, так как вы можете добавить дополнительные условия в эту функцию, например проверку ID текущего сайта в мультисайте.

20 окт. 2013 г. 21:07:27
1

Что касается последних версий WordPress 4+, решение, представленное здесь, устарело. Пожалуйста, ознакомьтесь с моим ответом здесь для получения более подробной информации

https://stackoverflow.com/a/37571439/1358670

1 июн. 2016 г. 17:27:38
Комментарии

Ответ должен быть больше, чем просто ссылка. Пожалуйста, добавьте решение.

fuxia fuxia
9 нояб. 2016 г. 11:39:15