Unknown language json files

时间:2019-01-22 作者:xmoex

情况

自某个版本之前(目前运行的是5.0.3)以来,一些插件更新会生成翻译文件,如wp-content/languages/de_DE-1aeac217128913231c1a10ae951869.json

我们使用两个系统,一个用于本地测试,另一个用于实时系统。更新在本地系统上执行,然后通过git推送到live。

我们使用两种语言,第一种是英语,第二种是德语

问题这些语言文件用于什么?(我想这是为了本地化javascript?)

2 个回复
最合适的回答,由SO网友:Tim 整理而成

这些语言文件是用来做什么的?(我想这是为了本地化javascript?)wp_set_script_translations WordPress 5中的函数。

是否需要将它们添加/提交/推送到实时服务器它们在运行时使用,就像.mo 文件为。因此,如果希望翻译工作正常,可以将它们添加到部署中。

(请注意,目前JSON翻译仅由管理员屏幕使用,但这可能随时发生变化,并将开始应用于主题和插件翻译)

为什么他们有这么奇怪的名字方案?没人能从文件名猜出它们的用途名称源自使用每个文件的脚本。

根据您的示例:文件中的第一个字符串是"Reusable Blocks". 这由位于的脚本使用wp-includes/js/dist/blocks.min.js - 取下.min MD5哈希是1a0cd6a7128913b15c1a10dd68951869.

如果不搜索代码,就不可能知道需要哪个脚本,但是ticket open about that.

SO网友:bueltge

这是一个翻译文件,由GlotPress 存储自WordPress版本5.0以来的翻译字符串。

它应该通过wordpress上的翻译API创建。org\'用于公共插件。它以您在安装中定义的语言存储插件的所有翻译字符串-在您的示例中,翻译为de_DE. 按存储相同的日期。po文件,有WordPress使用以来的较长时间。

md5键(1aeac217128913231c1a10ae951869) 用于标识插件,该插件应使用json文件,并且是“奇怪”名称方案的结果。可读性强,对于正确的分析是唯一的。文件将按此方案创建${domain}-${locale}-${md5}.json.

我注意到if只适用于JavaScript,但我认为它只在JavaScript解决方案中使用。最初的想法是让翻译成为JSON,以便在JavaScript上下文中更容易解析。尤其是古腾堡应该使用它们。

如果实时服务器可以从wp访问API。org则不需要从本地系统推送,实时系统将自动检查。但是,如果您在外部没有访问权限,并且需要控制,则该文件是翻译所必需的。

更多背景信息: