printf(__()); 工作?


12

今天,我通过一个主题来更好地理解WordPress和模板。我发现了这一点:

<?php 
printf( 
    __('Designed by %s', 'Anyword'), 
    '<a href="http://www.example.com">Blub</a>'
); 
?>

我知道它显示“ Designed by Blub”(链接Blub的位置),但是这是什么__()意思,为什么要插入字符串?什么是Anyword?

有人可以为我确切解释这句话吗?

Answers:


8

用于翻译文本

第二个参数是一种名称空间(这里称为域),用于检索翻译(例如从专用文件或其他文件中)。

因此,Anyword这里应该是模板背后的家伙,公司或可能是域/名称空间的人。

编辑:

wordpress的文档提供了有关如何使插件国际化的更多说明:


将其添加到插件代码中,以确保已加载语言文件:

load_plugin_textdomain('your-unique-name', false, basename( dirname( __FILE__ ) ) . '/languages' );

要获取字符串,只需使用__('String name','your-unique-name');返回翻译或_e('String name','your-unique-name');回显翻译即可。然后,翻译将进入您插件的/ languages文件夹。


对于您的插件/主题,your-unique-name似乎是Anyword


主题中有一些语言文件。争论如何知道仅将它们用于“ Anyword”?

我已经从WP文档的更好的部分更新了我的答案。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.