描述
如果没有翻译,或者没有加载文本域,则返回原始文本。
参数
- $text
-
(string) (必填) 要翻译的文本。
- $domain
-
(string) (可选) Text domain(文本域),用于检索翻译字符串的唯一标识符。
默认值: 'default'
返回
(string) 翻译文本。
源码
更新日志
版本 | 描述 |
---|---|
2.1.0 | 开始引入 |
使用示例
对于包含链接的转义文本,请将__()与sprintf结合使用。像这样
sprintf( __( 'You can visit the page by clicking <a href="%s">here</a>.', 'text_domain' ), 'http://example.com' );
这将防止翻译更改链接。
使插件或主题中的字符串可翻译:
$translated = __( 'Hello World!', 'mytextdomain' );
“mytextdomain”需要是在整个插件/主题中使用的唯一文本域。如上所示,这应该始终作为字符串文字直接传递,而不是分配给变量或常量的字符串。例如这是不正确的:
$text_domain = 'mytextdomain'; $string = 'Hello World!'; $translated = __( $string, $text_domain );
这似乎是可行的,但它会干扰插件/主题文件的自动解析以进行翻译。
我们也有 _e,它们做同样的事情,但它们之间唯一的区别是
_e 直接回显,而 __() 我们需要回显它们。例如:
_e(‘this is some message’, ‘twentyfourteen’);
等同于
echo __(‘this is a some message’, ‘twentyfourteen’);