# wp_load_translations_early()

URL: https://chugunov.pro/api-wordpress/functions/wp_load_translations_early/
Проверено на WordPress 6.9, обновлено 06.08.2026.
Источник: независимый русскоязычный справочник chugunov.pro. Не является официальной документацией WordPress.

Тип: функция.
Появился в версии: 3.4.0.

## Сигнатура

```php
wp_load_translations_early()
```

## Описание

Используется для ошибок, возникающих в ходе первоначальной загрузки, до того как локаль была правильно определена и загружена.
Предназначена для нестандартных последовательностей загрузки (таких как setup-config.php) или для случаев, когда сценарий затем завершится с ошибкой, иначе есть риск, что файл будет подключён дважды.

## Исходный код

Файл: `wp-includes/load.php:1524`

```php
function wp_load_translations_early() {
	global $wp_textdomain_registry, $wp_locale;
	static $loaded = false;

	if ( $loaded ) {
		return;
	}

	$loaded = true;

	if ( function_exists( 'did_action' ) && did_action( 'init' ) ) {
		return;
	}

	// We need $wp_local_package.
	require ABSPATH . WPINC . '/version.php';

	// Translation and localization.
	require_once ABSPATH . WPINC . '/pomo/mo.php';
	require_once ABSPATH . WPINC . '/l10n/class-wp-translation-controller.php';
	require_once ABSPATH . WPINC . '/l10n/class-wp-translations.php';
	require_once ABSPATH . WPINC . '/l10n/class-wp-translation-file.php';
	require_once ABSPATH . WPINC . '/l10n/class-wp-translation-file-mo.php';
	require_once ABSPATH . WPINC . '/l10n/class-wp-translation-file-php.php';
	require_once ABSPATH . WPINC . '/l10n.php';
	require_once ABSPATH . WPINC . '/class-wp-textdomain-registry.php';
	require_once ABSPATH . WPINC . '/class-wp-locale.php';
	require_once ABSPATH . WPINC . '/class-wp-locale-switcher.php';

	// General libraries.
	require_once ABSPATH . WPINC . '/plugin.php';

	$locales   = array();
	$locations = array();

	if ( ! $wp_textdomain_registry instanceof WP_Textdomain_Registry ) {
		$wp_textdomain_registry = new WP_Textdomain_Registry();
	}

	while ( true ) {
		if ( defined( 'WPLANG' ) ) {
			if ( '' === WPLANG ) {
				break;
			}
			$locales[] = WPLANG;
		}

		if ( isset( $wp_local_package ) ) {
			$locales[] = $wp_local_package;
		}

		if ( ! $locales ) {
			break;
		}

		if ( defined( 'WP_LANG_DIR' ) && @is_dir( WP_LANG_DIR ) ) {
			$locations[] = WP_LANG_DIR;
		}

		if ( defined( 'WP_CONTENT_DIR' ) && @is_dir( WP_CONTENT_DIR . '/languages' ) ) {
			$locations[] = WP_CONTENT_DIR . '/languages';
		}

		if ( @is_dir( ABSPATH . 'wp-content/languages' ) ) {
			$locations[] = ABSPATH . 'wp-content/languages';
		}

		if ( @is_dir( ABSPATH . WPINC . '/languages' ) ) {
			$locations[] = ABSPATH . WPINC . '/languages';
		}

		if ( ! $locations ) {
			break;
		}

		$locations = array_unique( $locations );

		foreach ( $locales as $locale ) {
			foreach ( $locations as $location ) {
				if ( file_exists( $location . '/' . $locale . '.mo' ) ) {
					load_textdomain( 'default', $location . '/' . $locale . '.mo', $locale );

					if ( defined( 'WP_SETUP_CONFIG' ) && file_exists( $location . '/admin-' . $locale . '.mo' ) ) {
						load_textdomain( 'default', $location . '/admin-' . $locale . '.mo', $locale );
					}

					break 2;
				}
			}
		}

		break;
	}

	$wp_locale = new WP_Locale();
}
```

## История изменений

- 3.4.0 — Introduced.

## Связанные

Использует: [`load_textdomain`](https://chugunov.pro/api-wordpress/functions/load_textdomain/), `WP_Locale::__construct`, [`did_action`](https://chugunov.pro/api-wordpress/functions/did_action/).
Используется в: `WP_Object_Cache::is_valid_key`, `WP_Fatal_Error_Handler::display_default_error_template`, `wpdb::process_fields`, [`wp_check_php_mysql_versions`](https://chugunov.pro/api-wordpress/functions/wp_check_php_mysql_versions/), [`wp_maintenance`](https://chugunov.pro/api-wordpress/functions/wp_maintenance/), [`wp_set_wpdb_vars`](https://chugunov.pro/api-wordpress/functions/wp_set_wpdb_vars/), [`dead_db`](https://chugunov.pro/api-wordpress/functions/dead_db/), [`is_blog_installed`](https://chugunov.pro/api-wordpress/functions/is_blog_installed/), [`ms_not_installed`](https://chugunov.pro/api-wordpress/functions/ms_not_installed/), `wpdb::check_connection`, `wpdb::query`, `wpdb::select`, `wpdb::_real_escape`, `wpdb::prepare`, `wpdb::print_error`, `wpdb::db_connect`.

Оригинал в официальной документации: https://developer.wordpress.org/reference/functions/wp_load_translations_early/
