wordpress 国际主题翻译问题的修复方法

网站源码

问题

最近起子主要使用的是博客主题DIVI。 由于它可以帮助一般人快速的构建一个简洁美观的页面。在我静态html实践之前是比较实用的功能,不过现在会了一点前端以后真是写起页面来一发不可收拾。成天捣鼓css什么的。

Divi是由Elegant出品的一款高级的企业主题,相比以前Elegant出品的主题都要强大,这款主题目前自带中文语言包,汉化率99%,基本上不再需要汉化了,可以直接安装使用。当然,还是有不少翻译上的小问题的。

比如Divi图片gallery相册功能。就是一个很好的功能,然而,多页情况下,pre(之前的意思)应该和“下”对应而翻译为上或者上一页。结果变成了5、6个乱码汉字,或许是外文编辑精简上一页去掉了最前面的字符导致的乱码?

这个问题很困扰我,修复了theme lang里的zh_cn.po文件,毫无效果。之后见过百度经验上直接进入到函数里改生成英文输出的,实在是杀鸡用了牛刀。

原因

之前所提出的问题,究其原因,是因为wordpress的一个知识点,即

wordpress 主题最翻译最终生效取决于.po文件

哈,加个divi的效果凸显这个知识点吧,那么其实po 和mo文件是相通的。wordpress一般是通过一个汉化过(翻译过)的 mo 文件来实现( WordPress 仅可识别 mo 文件)。如果原作者提供了一个 po 文件或 mo 文件,那么我们就可以通过相关工具来自行汉化,或者翻译成其他语言版本。因为 mo 文件不能直接编辑,所以我们得编辑 po 文件,若仅有 mo 文件,那么就应该先把它转换成 po 文件后再进行编辑翻译。

解决

那么如何将 po 文件编译成(转换) mo 文件呢?

使用gettext – 将mo文件反编译成po文件

 

linux下,就这一条命令搞定。就是这么简单。主题的翻译就此正常修复

继续阅读