填写您的邮件地址,订阅我们的精彩内容:

如何对WordPress主题实现多语言化支持之简单教程

533

如果你是一个WordPress主题制作爱好者,当然会希望自己制件的主题能更受欢迎,一个很重要的方法是让你制作的主题能够实现对中文之外更多语言的支持。而这一篇文章是说一下怎样让WordPress的主题实现语言的本地化。

(接下来的例子我以主题Js O4w作例)

首先你需要在主题文件中添加本地化支持语句,把下面的代码添加到你主题中的function.php文件中去:

function theme_init(){
load_theme_textdomain('js-o4w', get_template_directory() . '/languages');
}

上面的代码中红色字段随意,它是用来告诉WordPress如何选择那些能本地化语言的代码,一般来说,填个主题的名字就可以了。而绿色的字段是告诉WordPress本地化语言文件的调用路径,一般就是那样写的,大可以不用改变。

有了上面代码的设置后,大家就着手定义一下在主题文件中究竟那些字段需要支持语言的本地化,我这里以侧栏中的一句标题代码作例。在还没有支持语言本地化时候,代码是这样的:

<h2>Most Popular</h2>

因为我希望对上面红色字段Most Popular修改到支持本地化,我只要把代码修改成如下:

<h2><?php _e('Most Popular', 'js-o4w'); ?></h2>

大家能看到修改的内容了吧,再举一例,比如我在footer信息中的一段代码:

<span>Copyright 2009</span>

我要把红色的字段copyright修改到支持本地化,修改代码如下:

<span><?php _e('Copyright', 'js-o4w'); ?> 2009</span>

相信到此大家就很了解是如何修改主题中显示字符段的代码了,注意的上面两句代码中都带有的标识字段:

js-o4w

它就是用来对应在文章最开头那段代码中我说的随意那部分,它们之间是要对应的。然后大家把需要修改的都修改后,那接下来怎样对这些需要本地化的字段进行翻译呢?我们继续说下去。

接着要去下载一个Poedit这个编辑工具。然后我们需要在主题的目录中新建一个文件夹,因为我们需要在这个文件夹中放置翻译好供系统读取的文件,根据本文开端代码中的绿色字段部分,我们这个文件夹的名字是:languages

下一步利用Poedit新建一个“消息目录文档”,如下图:

 如何对WordPress主题实现多语言化支持之简单教程

然后它需要我们对这个文档初始设置一下。

 如何对WordPress主题实现多语言化支持之简单教程

(上图)本例我需要把上面的英文字段翻译成中文的,所以在设置的“工程信息”一栏中我是这样填写的,这些填写都不是很重要,就是一些记录信息之类的,不影响翻译操作。

 如何对WordPress主题实现多语言化支持之简单教程

(上图)接着要填写的是第二个标签页“路径”。这一步很重要,请按图中的填写。因为它将会告诉这个软件从何处获取需要翻译的字段。

 如何对WordPress主题实现多语言化支持之简单教程

(上图)第三个标签页是用来决定自动获取需要翻译字段的关键字。就是告诉软件,当代码中出现什么的字时候,确定它为要翻译的字段而选择出来。大家按上图填写就好了,是不是发现上面的“_e”在较早我所说的例子代码里都存在啊,大家明白了吧。

当大家按上面的设置好之后,记得把文件存放在较早前新建的目录languages内,因为这是简体中文的翻译,所以文件名是zh_CN,后缀名是.po

接下来点击一下软件中的第三个图标(如下图红色标记处)。哗啦哗啦的软件就把我们主题文件中所有合符要求的需要翻译的字段列举出来了,很效率吧。

 如何对WordPress主题实现多语言化支持之简单教程

如下图,工具显示两栏,左侧为需要翻译的字段,右侧是译文。当还没有翻译的字段的右侧是留空的,如图中的“Read more”。

 如何对WordPress主题实现多语言化支持之简单教程

我们点击下需要翻译的字段,然后在最下面一栏填写翻译的内容就行了。大家就这样把需要翻译的字段一个一个翻译完吧,耐心点。

当所有需要翻译的字段都完成后,点击如下图的红色按钮。软件会把当前的编译文件zh_CN.po进行保存并且同时在该文件的的有目录中生成一个文件名相同但后缀名是.mo的文件。

 如何对WordPress主题实现多语言化支持之简单教程

因为后缀名是.po的文件我们是可以进行编译操作的,文件名是.mo的则是不能进行编译,但它却是系统需要读取的文件。所以请务必日后在每次更改了.po文件后,都重复一下上面的这个步骤,更新一下对应的.mo文件。

 如何对WordPress主题实现多语言化支持之简单教程

基本的操作就是这样的了,大家翻译好简体中文的,就翻译其它语言的吧。所有的步骤都与上面所说的相同,只是翻译的内容不同罢了。相信大家会举一反三的。

那么再多说一句,WordPress是怎样知道该读取哪个语言文件呢?其实就是在它的wp-config.php文件中,不是有下面的这样一句?

define ('WPLANG', 'zh_CN');

注意红色部分。哦~,此时相信大家都知道了。

文章来自:http://www.saywp.com/wordpress/make-your-wordpress-theme-translatable.html

下面我简单说几句