_get_path_to_translation_from_lang_dir( string $domain ): string|false

This function has been deprecated. Use _get_path_to_translation() instead.

This function’s access is marked private. This means it is not intended for use by plugin or theme developers, only in other core functions. It is listed here for completeness. Use _get_path_to_translation() instead.

Gets the path to a translation file in the languages directory for the current locale.

Description

Holds a cached list of available .mo files to improve performance.

See also

Parameters

$domainstringrequired
Text domain. Unique identifier for retrieving translated strings.

Return

string|false The path to the translation file or false if no translation file was found.

Source

function _get_path_to_translation_from_lang_dir( $domain ) {
	_deprecated_function( __FUNCTION__, '6.1.0', 'WP_Textdomain_Registry' );

	static $cached_mofiles = null;

	if ( null === $cached_mofiles ) {
		$cached_mofiles = array();

		$locations = array(
			WP_LANG_DIR . '/plugins',
			WP_LANG_DIR . '/themes',
		);

		foreach ( $locations as $location ) {
			$mofiles = glob( $location . '/*.mo' );
			if ( $mofiles ) {
				$cached_mofiles = array_merge( $cached_mofiles, $mofiles );
			}
		}
	}

	$locale = determine_locale();
	$mofile = "{$domain}-{$locale}.mo";

	$path = WP_LANG_DIR . '/plugins/' . $mofile;
	if ( in_array( $path, $cached_mofiles, true ) ) {
		return $path;
	}

	$path = WP_LANG_DIR . '/themes/' . $mofile;
	if ( in_array( $path, $cached_mofiles, true ) ) {
		return $path;
	}

	return false;
}

Changelog

VersionDescription
6.1.0This function has been deprecated. Use _get_path_to_translation() instead.
4.7.0Introduced.

User Contributed Notes

You must log in before being able to contribute a note or feedback.