如何自动执行工作“ wp_set_script_translations”功能?

时间:2019-04-23 09:06:45

标签: php wordpress wpml

我正在尝试将'wp_set_script_translations'与wpml结合使用。

我已经实施了Wordpress Codex的所有建议。 WPML插件在“ \ wp-content \ languages \ wpml”文件夹中生成格式为“ locale-domain-handle.json”的文件。但是文件生成时没有翻译,并且使用错误的域名“消息”而不是我指定的域。我还检查了WPML字符串转换文件,似乎JED函数生成的json总是设置“消息”域并忽略客户域名。

{
  "translation-revision-date": "2019-04-23 08:33:37+0000",
  "generator": "WPML String Translation 2.10.2",
  "domain": "messages",
  "locale_data": {
    "messages": {
      "": {
        "domain": "messages",
        "plural-forms": "nplurals=2; plural=n != 1;",
        "lang": "fr_FR"
      }
    }
  }
}

我希望在文件中找到具有正确域名的翻译,或者在不手动生成翻译文件的情况下使用其他自动方法。

1 个答案:

答案 0 :(得分:0)

翻译最终经过适当的开发和记录:https://developer.wordpress.org/block-editor/developers/internationalization/

基本上,您需要:

  1. 使用wp-i18n软件包定义项目中要作为字符串的字符串 可翻译的。
  2. 使用WP-CLI(wp i18n make-pot)创建一个.pot文件,就像我们一直使用WP主题和插件一样。
  3. 根据我们先前创建的.po生成.pot文件并翻译其内容。
  4. 再次使用WP-CLI(wp i18n make-json)将我们的.po文件转换为所需的JSON格式。
  5. 使用wp_set_script_translations PHP函数加载翻译文件。

希望这可以帮助某个人;)