欢迎来到天天文库
浏览记录
ID:8966588
大小:167.30 KB
页数:6页
时间:2018-04-13
《让press主题支持语言包》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、在主题的functions.php文件添加下面的代码:1234add_action('after_setup_theme','my_theme_setup');functionmy_theme_setup(){load_theme_textdomain('wpdaxue',get_template_directory().'/languages');}该代码是通过load_theme_textdomain()函数来定义主题的语言路径,其中包含了两个参数,第一个“wpdaxue”是textdomain,第二个“get_template_director
2、y().'/languages'”则指明主题的语言存放路径为当前主题的languages目录。只要将语言包存放在这个目录,就可以生效。规范编译要翻译的内容要让你的主题的文本内容支持自动翻译,需要你做好规范符合WordPressAPI的书写。WordPress常用下面几个函数来包裹需要翻译的内容:·__()·_e()·_x()·_ex()·_n()倡萌已经介绍过《WordPress翻译中__()、_e()、_x、_ex和_n的用法及区别》,但是在实际使用中,我们还需要注意以上函数的末位参数。也就是在上一步中,我们通过load_theme_textdom
3、ain()函数定义了第一个参数$domain为“wpdaxue”,这个参数都需要添加到__()等函数中作为末位参数,它是用来检索被翻译字符串的唯一标识符。例如:123如果去掉上面代码__()的末位参数‘wpdaxue’,对应的'Clickheretoreadmore'的翻译内容就没办法正常加载。使用POEdit制作语言包POEdit是一款非常有用的语言包制作软件,你可以在POEdit官方下载,安装好以后,就是中文界面了。下面就简单演示一下操
4、作过程。新建编目点击文件>新建编目,会出现如下界面:1.在”翻译属性”中按照下面的范例添加信息:需要注意的是,“语言”就是输出语言的简码,比如简体中文为zh_CN(注意大小写),然后字符集一般选择UTF-8,复数形式一般填nplurals=2;plural=(n!=1);即可。2.切换到“源路径”,由于前面我们创建的语言包路径为当前主题的languages目录,所以这里我们添加相对路径../即可,如下图:3.添加“源关键字”,这个关键字就是要识别上面的几个翻译函数。需要注意的是,_n、_x和_ex这三个函数要添加对应的参数才能实现其功能,建议对应的写
5、法为·__·_e·_n:1,2·_x:1,2c·_ex:1,2c填写完以后,点击“确认”,就创建好了编目。导入需要翻译的字符串点击“更新”按钮,如果你前面的步骤没有出错的话,就会自动搜索主题文件中需要翻译的条目,如下图:翻译字符串翻译完以后,将语言包保存到主题的语言目录languages中,这里特别要注意语言包的命名。它是使用Gettext代码来命名的,比如中文的Gettext语言代码为zh,国别代码为CN,所以最终保存的简体中文语言包为zh_CN.po,POEdit会自动生成一个名为zh_CN.mo的文件。po和mo的最直接的区别在于:po文件是给
6、人看的,也是可以直接通过POEdit编辑的,mo文件则是给服务器识别的,是用来显示翻译内容所必需的。也就是说,你的主题语言目录中,可以没有po文件,但是必须有mo文件,否则服务器就没办法加载翻译!你可以通过下面的链接了解更多Gettext代码:Gettext语言代码Gettext国别代码让WordPress识别语言包通过上面的步骤,我们已经创建好了语言包,那么WordPress如何才能识别语言包?打开WordPress根目录下的wp-config.php文件,找到WPLANG,如果这里填入的是zh_CN,说明你使用的是简体中文版本的WordPress
7、,那么主题也会自动调用简体中文语言包zh_CN.mo。12345678/***WordPress语言设置,中文版本默认为中文。**本项设定能够让WordPress显示您需要的语言。*wp-content/languages内应放置同名的.mo语言文件。*要使用WordPress简体中文界面,只需填入zh_CN。*/define('WPLANG','zh_CN');小结在整个过程中,工作量最大的就是“规范编译要翻译的内容”这个步骤,你必须有耐心,仔细地规范代码。熟悉__()、_e()、_x、_ex和_n的不同用法是难点所在。
此文档下载收益归作者所有