функция
since 5.9.0
translate_settings_using_i18n_schema()
Проверено на WordPress 6.9, обновлено Источник: WordPress Developer Resources.
Сигнатура
translate_settings_using_i18n_schema( string|string[]|array[]|object $i18n_schema, string|string[]|array[] $settings, string $textdomain ): string|string[]|array[]
Описание
Переводит переданное значение настройки с помощью её схемы i18n.
Параметры
$i18n_schema
string|string[]|array[]|object
обязательный
Схема i18n для настройки.
$settings
string|string[]|array[]
обязательный
Значение для настроек.
$textdomain
string
обязательный
Текстовый домен, используемый для переводов.
Возвращаемое значение
string|string[]|array[]
Исходный код
wp-includes/l10n.php:1999
function translate_settings_using_i18n_schema( $i18n_schema, $settings, $textdomain ) {
if ( empty( $i18n_schema ) || empty( $settings ) || empty( $textdomain ) ) {
return $settings;
}
if ( is_string( $i18n_schema ) && is_string( $settings ) ) {
return translate_with_gettext_context( $settings, $i18n_schema, $textdomain );
}
if ( is_array( $i18n_schema ) && is_array( $settings ) ) {
$translated_settings = array();
foreach ( $settings as $value ) {
$translated_settings[] = translate_settings_using_i18n_schema( $i18n_schema[0], $value, $textdomain );
}
return $translated_settings;
}
if ( is_object( $i18n_schema ) && is_array( $settings ) ) {
$group_key = '*';
$translated_settings = array();
foreach ( $settings as $key => $value ) {
if ( isset( $i18n_schema->$key ) ) {
$translated_settings[ $key ] = translate_settings_using_i18n_schema( $i18n_schema->$key, $value, $textdomain );
} elseif ( isset( $i18n_schema->$group_key ) ) {
$translated_settings[ $key ] = translate_settings_using_i18n_schema( $i18n_schema->$group_key, $value, $textdomain );
} else {
$translated_settings[ $key ] = $value;
}
}
return $translated_settings;
}
return $settings;
}
История изменений
| Версия | Описание |
|---|---|
| 5.9.0 | Introduced. |

