Codex

Interested in functions, hooks, classes, or methods? Check out the new WordPress Code Reference!

User:Ericmann/load plugin textdomain

Description

Load a package of translated strings for the plugin.

Usage

load_plugin_textdomain( $domain, $abs_rel_path, $plugin_rel_path );

If no path is provided for the third parameter, the root of the plugin directory is assumed.

The .mo file should be named based on the domain followed by a dash, and then the locale exactly. The locale is the language code and/or country code you defined in the constant WPLANG in wp-config.php.

For example, the locale for German is 'de', and the locale for Danish is 'da_DK'. If your plugin's text domain is "my-plugin," the Danish .mo and .po files should be named "my-plugin-da_DK.mo" and "my-plugin-da_DK.po."

Call this function in your plugin as early as the plugins_loaded action.

If you call load_plugin_textdomain() multiple times for the same domain, the translations will be merged. If both sets have the same string, the translation from the original value will be taken.

Parameters

$domain
(string) (required) Unique identifier for retrieving translated strings.
Default: None
$abs_rel_path
(string) (optional) Relative path to ABSPATH of a folder, where the .mo file resides. Deprecated, but still functional until 2.7
Default: false
$plugin_rel_path
(string) (optional) Relative path to WP_PLUGIN_DIR. This is the preferred argument to use. It takes precendence over $abs_rel_path
Default: false

Return Values

(void) 
This function does not return a value.

Examples

Load with a hook

function myplugin_init() {
  load_plugin_textdomain( 'my-plugin', false, dirname( plugin_basename( __FILE__ ) ) ); 
}
add_action( 'plugins_loaded', 'myplugin_init' );

Load from a subfolder

load_plugin_textdomain( 'my-plugin', false, dirname( plugin_basename( __FILE__ ) ) . '/languages/' );

Notes

  • l10n is an abbreviation for localization.

Change Log

  • Since: 1.5.0
  • 2.7.0: $abs_rel_path parameter was deprecated.

Source File

load_plugin_textdomain() is located in wp-includes/l10n.php.

Related

Localization: get_locale(), load_textdomain(), load_default_textdomain(), load_plugin_textdomain(), load_theme_textdomain()

See also index of Function Reference and index of Template Tags.