两个国际化(I18N)函数__()和_e()之间的差异

时间:2016-11-29 作者:Steve

我正在学习插件开发课程,遇到了两种不同的国际化功能:

<?php __(\'Newsletter Subscriber\', \'ns_domain\'); ?>
&;

<?php _e(\'Title:\'); ?>
我找不到任何关于何时使用其中每一个的参考信息。

你能告诉我正确的方向来了解更多关于这些的信息吗?

2 个回复
最合适的回答,由SO网友:Dave Romsey 整理而成

__() “从translate()函数中检索已翻译的字符串”,而不回显。_e() 执行相同的操作,但响应输出。

有关详细信息,请参阅以下帮助文章:

SO网友:prosti

知道这一点可能很好。内部化的基础是translate 作用

File: wp-includes/l10n.php
78: /**
79:  * Retrieve the translation of $text.
80:  *
81:  * If there is no translation, or the text domain isn\'t loaded, the original text is returned.
82:  *
83:  * *Note:* Don\'t use translate() directly, use __() or related functions.
84:  *
85:  * @since 2.2.0
86:  *
87:  * @param string $text   Text to translate.
88:  * @param string $domain Optional. Text domain. Unique identifier for retrieving translated strings.
89:  *                       Default \'default\'.
90:  * @return string Translated text
91:  */
92: function translate( $text, $domain = \'default\' ) {
只要你打电话给包装商

File:wp-includes/l10n.php
172: function __( $text, $domain = \'default\' ) {
173:    return translate( $text, $domain );
174: }

File: wp-includes/l10n.php
188: function esc_attr__( $text, $domain = \'default\' ) {
189:    return esc_attr( translate( $text, $domain ) );
190: }

File: wp-includes/l10n.php
217: function _e( $text, $domain = \'default\' ) {
218:    echo translate( $text, $domain );
219: }
或其他许多wp-includes/l10n.php, 将调用此函数。但您永远不会直接调用此函数。

相关推荐

Disabling Translation Update

WordPress更新Languages文件夹中的翻译文件有两种方式:1。触发时自动更新。2、当用户在“更新”页面上请求时手动执行。有没有办法禁用这两个文件夹,这样就不能对Languages文件夹应用任何更改?