WordPress Version: 5.3
/**
* Loads the translated strings for a plugin residing in the mu-plugins directory.
*
* @since 3.0.0
* @since 4.6.0 The function now tries to load the .mo file from the languages directory first.
*
* @global WP_Textdomain_Registry $wp_textdomain_registry WordPress Textdomain Registry.
*
* @param string $domain Text domain. Unique identifier for retrieving translated strings.
* @param string $mu_plugin_rel_path Optional. Relative to `WPMU_PLUGIN_DIR` directory in which the .mo
* file resides. Default empty string.
* @return bool True when textdomain is successfully loaded, false otherwise.
*/
function load_muplugin_textdomain($domain, $mu_plugin_rel_path = '')
{
/** @var WP_Textdomain_Registry $wp_textdomain_registry */
global $wp_textdomain_registry;
if (!is_string($domain)) {
return false;
}
/** This filter is documented in wp-includes/l10n.php */
$locale = apply_filters('plugin_locale', determine_locale(), $domain);
$mofile = $domain . '-' . $locale . '.mo';
// Try to load from the languages directory first.
if (load_textdomain($domain, WP_LANG_DIR . '/plugins/' . $mofile, $locale)) {
return true;
}
$path = WPMU_PLUGIN_DIR . '/' . ltrim($mu_plugin_rel_path, '/');
$wp_textdomain_registry->set_custom_path($domain, $path);
return load_textdomain($domain, $path . '/' . $mofile, $locale);
}