虽然英语是网络上最有代表性的语言,不过制作主题时多为其他语言用户考虑给他们提供翻译化的主题,当然更好。在这里就一步步教大家如何让WordPress主题可翻译成任何语言。
    1 添加必要的函数
    从最基本的入手,首先在functions.php 里添加下面的代码:

    1. load_theme_textdomain( 'Cats Who Code', TEMPLATEPATH.'/languages' );
    2. $locale = get_locale();
    3. $locale_file = TEMPLATEPATH."/languages/$locale.php";
    4. if ( is_readable($locale_file) )
    5. require_once($locale_file);

    看第一行有loadthemetextdomain() 函数,这个函数的作用是允许你加载文本域名。你可以选择任何独一无二的域名。最好选择你的主题名称。
    2 国际化主题
    翻译WordPress主题,要使用到php gettext 函数。 GetText有两个函数: e 和 _ (两条下划线)。 “_e”是用来显示 “单纯”文本,
    函数用于显示已经使用PHP标签的文本。 例如:

    1. <?php _e("The page you're looking for doesn't exist", "Cats Who Code"); ?>
    2. <?php the_content(__('Read more...', "Cats Who Code")); ?>

    注意上面的文本域名(Cats Who Code)必须与functions.php里的文本域名保持一致。
    比较枯燥的部分工作是用这些函数代替每一个字符串。这就得看你的主题里有多少字符串了,可能要花点时间。据说利用GNU 工具可以很容易实现从文件从提取字符串,不过我没有试过也不知道如何。有兴趣的朋友可以用谷歌搜索xgettext
    3 创建.po文件
    完成上面两个步骤,你的WordPress主题就可以翻译为任何语言。不过要用其他语言显示出来,需要添加.po文件。
    .po 文件是一个可变对象,指的是那些包含字符串及字符串另一种语言的译本的文件。例如,如果你下载法语版的WordPress主题,主题包里就会有fr_FR.po 文件。这个文件就包含了所有让你的主题用法语显示的翻译。你的主题就会用法语“Bienvenue”显示而不是用英语“Welcome”。
    好在这次你无需在的主题文件里面查找所有需要被翻译的字符串。一个免费的在线工具icanlocalize.com可以帮你扫描PHP文件并创建.po文件。ICanLocalize 会自动提取所有包含(“txt”, “domain”)e(“txt”, “domain”) 的字符串, 包括所有双引号和单引号中的字符串以及任何字符编码。
    创建一个可翻译的WordPress模板 - 图1
    还可以通过专门的免费软件PoEdit来编辑Po文件。
    创建一个可翻译的WordPress模板 - 图2
    你得翻译每一个文本字符串,翻译完后保存.po文件。PoEdit会生产一个.mo文件(.po文件的编译版)。
    4 实施
    到此为止,你已经完成了最难的部分,剩下的就是定义WordPress主题地域。
    首先是要获得你的语言和国家代码,例如,你的语言是中文,你居住在中国。你的代码为zh_CN。你可以通过GNU gettext手册的页面找到你的国家代码语言代码
    获得你的代码后,打开_wp-config.php
    文件查找WPLANG常数,如果存在直接用你的代码取代当前的代码,如果不存在,在wp-config.php添加下列代码(用你的需要的语言代码)即可:
    define (‘WPLANG’, ‘zh_CN’)。