__( string $text, string $domain = 'default' )

Retrieve the translation of $text.


Description Description

If there is no translation, or the text domain isn’t loaded, the original text is returned.


Parameters Parameters

$text

(string) (Required) Text to translate.

$domain

(string) (Optional) Text domain. Unique identifier for retrieving translated strings.

Default value: 'default'


Top ↑

Return Return

(string) Translated text.


Top ↑

Source Source

File: wp-includes/l10n.php

function __( $text, $domain = 'default' ) {
	return translate( $text, $domain );
}

Top ↑

Changelog Changelog

Changelog
Version Description
2.1.0 Introduced.


Top ↑

User Contributed Notes User Contributed Notes

  1. Skip to note 1 content
    Contributed by Codex

    Make a string inside your plugin or theme translatable:

    $translated = __( 'Hello World!', 'mytextdomain' );
    

    ‘mytextdomain’ needs to be a unique text domain used throughout your plugin/theme. This should always be directly passed as a string literal as shown above, not a string assigned to a variable or constant. E.g., this is incorrect:

    $text_domain = 'mytextdomain';
    $string = 'Hello World!';
    $translated = __( $string, $text_domain );
    

    This seems to work, but it will interfere in automatic parsing of your plugin/theme’s files for translation.

  2. Skip to note 3 content
    Contributed by Saurabh Ranjan

    We have _e as well which do the same thing but and only difference between them is
    _e echo directly whereas __ we need to echo them.

    For Example:

    _e(‘this is some message’, ‘twentyfourteen’);

    is same as

    echo __(‘this is a some message’, ‘twentyfourteen’);

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