Получение языка в блоге (поле «lang_id» сайта в соответствии с настройкой WPLANG)

Есть таблица wp_blogs которая очень полезна, когда вы хотите получить список блогов (и это то, что мне нужно сделать).

Проблема в том, что я не могу заставить язык блогов из поля lang_id пределах этой таблицы. Он просто не соответствует параметру WPLANG установленному в таблице опций каждого блога.

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

Итак, что lang_id с этим полем lang_id ? Для чего это?

Я не знаю, для чего нужен параметр lang_id. AFAIK он не является частью основных параметров WordPress.

Если вы хотите проверить язык всех блогов, вы можете проверить собственную таблицу параметров блога для WPLANG или использовать параметр WPLANG в сети (или выйти из строя с нужной вам локали) аналогично функции get_locale () WordPress.

Я бы рекомендовал проверить исходный код WordPress. Вы увидите, что функция get_bloginfo () в основном представляет собой оболочку для получения параметров или вызова других функций для извлечения запрошенных данных. В случае параметра 'language' он вызывает функцию get_locale (), которая находится в wp-includes / l10n.php

См. http://phpxref.ftwr.co.uk/wordpress/nav.html?_functions/index.html

Глядя на функцию get_locale (), она показывает, что для извлечения языка / языка сайта в многоуровневой установке WordPress он будет:

  1. Проверьте, установлен ли языковой стандарт и возвратите его после применения фильтра «locale»

  2. Если переменная locale не была установлена, она проверит опцию WPLANG в параметрах по умолчанию для WordPress (для каждого сайта).

  3. Если собственный параметр WPLANG сайта пуст или не существует, он проверяет параметры сети для опции WPLANG.

  4. Если все не удается, локаль будет en_US