restore_current_locale()
Восстанавливает исходную локаль текущего запроса и соответствующие ей переводы.
Функция отменяет все изменения локали, выполненные через switch_to_locale(), и очищает стек переключений.
При восстановлении обновляются переводы, глобальный объект $wp_locale и локаль системы переводов. Затем срабатывают события change_locale и restore_previous_locale.
Используйте restore_previous_locale(), если нужно отменить только последнее переключение и вернуться к предыдущей локали.
Работает на основе: WP_Locale_Switcher::restore_current_locale()
Хуков нет.
Возвращает
string|false.
строку- код восстановленной исходной локали.false- переключатель локалей недоступен или локаль ранее не переключалась.
Использование
restore_current_locale();
Примеры
#1 Временное переключение языка
Формируем переведённый текст, после чего восстанавливаем исходную локаль:
$recipient_locale = 'de_DE';
if ( switch_to_locale( $recipient_locale ) ) {
try {
$subject = __( 'Your order is ready', 'my-plugin' );
} finally {
restore_current_locale();
}
}Заметки
Global. WP_Locale_Switcher. $wp_locale_switcher WordPress locale switcher object. |
Список изменений
| С версии 4.7.0 | Введена. |
Код restore_current_locale() restore current locale WP 7.1
function restore_current_locale() {
/* @var WP_Locale_Switcher $wp_locale_switcher */
global $wp_locale_switcher;
if ( ! $wp_locale_switcher ) {
return false;
}
return $wp_locale_switcher->restore_current_locale();
}