本文目录
[隐藏]
- 1描述
- 2用法
- 3参数
- 4返回的值
- 5例子
- 5.1例 1
- 5.2例 2
- 6注释
- 7函数历史
- 8源文件
描述
加载翻译后的主题字符串。
如果本地主题根目录下有一个.mo文件,该文件会被包括在$domain的被翻译字符串中。
.mo文件必须根据本地设置命名。
用法
<?php load_theme_textdomain( $domain, $path ) ?>
参数
- $domain
-
(字符串)(必需)用以检索被翻译字符串的唯一标识符
- 默认值: None
- $path
-
(未知)(可选)语言包 .mo 文件所在的目录(没有结尾的斜线)
- 默认值:false
返回的值
- (布尔)
- 如果 textdomain 可以正常加载,返回 TRUE ;反之返回 FALSE
例子
例 1
load_theme_textdomain() 必须在 after_setup_theme 动作钩子后调用。
1 2 3 4 |
add_action('after_setup_theme', 'my_theme_setup'); function my_theme_setup(){ load_theme_textdomain('my_theme', get_template_directory() . '/languages'); } |
以上例子,指明主题的语言目录位于该主题的 languages 文件夹。
需要注意的是,WordPress主题语言包不像插件语言包,如果你将主题语言包命名为my_theme-zh_CN.mo ,它是没办法使用的。正确的命名方式是根据本地语言设置命名来命名,比如 zh_CN.mo
例 2
如果你希望通过 URL 中的参数来调用不同的语言,比如 www.example.com/?l=zh_CN 就调用 zh_CN.mo ,那你可以参考下面的例子:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
// 更改本地语言 // 必须在 load_theme_textdomain() 的前面调用 add_filter( 'locale', 'my_theme_localized' ); function my_theme_localized($locale) { if (isset($_GET['l'])) { return $_GET['l']; } return $locale; } // 设置主题语言路径 // 语言包应该访问 my_theme/languages/ 目录 // WordPress 自身语言包放在 wp-content/languages/ 目录 load_theme_textdomain( 'my_theme', TEMPLATEPATH . '/languages' ); |
注释
国际化和本地化是指计算机软件来适应不同的语言。
l10n 是 localization 的缩写,i18n的18代表第i个和最后的N国际之间的字母数。
函数历史
始见于1.5.0版本
源文件