分类
一些积累

WordPress 多语言包处理方法

中文版产品转换支持多语言处理方案:

  1. Php里用 _e(),  __()等方法且中文写描述文字相关;js用到的文案用wp_localize_script() 方法统一在php设定对应变量;
  2. 对应__e,__()里的中文补充英文译文;
  3. 运行gulp的gulp-wp-pot模块,将php里所有_e(), __()等写法的字段抽离生成 .pot文件;
  4. 用Poedit将.pot文件生成.po文件,并翻译完整中文语言包文件(xx_ZH_CN.po);
  5. 记事本打开xx_ZH_CN.po 手动将(msgid字段)混合中文的源句子里的中文去掉;同时php里同样将_e(), __()里的中文去掉只保留英文;
  6. 将处理好的.po文件编译.mo文件;
  7. 再次执行步骤3, 生成最终的.pot文件;

如果一开始就是用纯英文写的页面,可用如下方案:

  1. 保证Php里用 _e(),  __()等方法用纯英文写描述文字相关;js用到的文案用wp_localize_script() 方法统一在php设定对应变量;
  2. 运行gulp的gulp-wp-pot模块,将php里所有_e(), __()等写法的字段抽离生成 .pot文件;
  3. 用Poedit将.pot文件生成.po文件,并翻译完整中文语言包文件(xx_ZH_CN.po);
  4. 将处理好的.po文件编译.mo文件;

* 其他语言也是基于.pot文件来生成po文件及mo文件