A WordPress-centric search engine for devs and theme authors



load_plugin_textdomain ›

Since1.5.0
Deprecatedn/a
load_plugin_textdomain ( $domain, $deprecated = false, $plugin_rel_path = false )
Parameters: (3)
  • (string) $domain Unique identifier for retrieving translated strings
    Required: Yes
  • (string) $deprecated Optional. Use the $plugin_rel_path parameter instead. Default false.
    Required: No
    Default: false
  • (string) $plugin_rel_path Optional. Relative path to WP_PLUGIN_DIR where the .mo file resides. Default false.
    Required: No
    Default: false
Returns:
  • (bool) True when textdomain is successfully loaded, false otherwise.
Defined at:
Codex:
Change Log:
  • 4.6.0 The function now tries to load the .mo file from the languages directory first.

Loads a plugin's translated strings.

If the path is not given then it will be the root of the plugin directory.

The .mo file should be named based on the text domain with a dash, and then the locale exactly.



Source

function load_plugin_textdomain( $domain, $deprecated = false, $plugin_rel_path = false ) {
	/**
	 * Filters a plugin's locale.
	 *
	 * @since 3.0.0
	 *
	 * @param string $locale The plugin's current locale.
	 * @param string $domain Text domain. Unique identifier for retrieving translated strings.
	 */
	$locale = apply_filters( 'plugin_locale', is_admin() ? get_user_locale() : get_locale(), $domain );

	$mofile = $domain . '-' . $locale . '.mo';

	// Try to load from the languages directory first.
	if ( load_textdomain( $domain, WP_LANG_DIR . '/plugins/' . $mofile ) ) {
		return true;
	}

	if ( false !== $plugin_rel_path ) {
		$path = WP_PLUGIN_DIR . '/' . trim( $plugin_rel_path, '/' );
	} elseif ( false !== $deprecated ) {
		_deprecated_argument( __FUNCTION__, '2.7.0' );
		$path = ABSPATH . trim( $deprecated, '/' );
	} else {
		$path = WP_PLUGIN_DIR;
	}

	return load_textdomain( $domain, $path . '/' . $mofile );
}