如何使用谷歌翻译自动翻译 WordPress 插件和主题

已发表: 2019-07-31

我们都听说过 WordPress 现在支持超过 33% 的网站的统计数据,但是您如何确保您的插件或主题可以在生态系统中尽可能广泛地使用?

令人惊讶的是,只有不到一半的 WordPress 网站将其语言环境设置为英语! 如果您尚未设置翻译,这意味着超过 50% 的潜在客户可能无法以他们最了解的语言使用您的产品。

WordPress.org 语言环境统计

向世界开放产品的最佳方法之一是为所有面向用户的文本创建高质量的翻译,但问题是翻译需要大量时间(整个产品中的文本越多,字符串越多)翻译)。 翻译还需要精通不同的语言,了解如何管理 MO 和 PO 文件,总体而言,需要付出很多努力。

我的名字是 Diego Imbriani,自 2011 年以来我就是一名插件开发人员,我一直通过我的公司 GreenTreeLabs 销售我的插件,我的产品目前活跃在全球约 70,000 个网站上。

值得庆幸的是,我找到了一种方法来帮助减轻整个翻译过程,并使翻译插件和主题变得更加容易。

介绍

我最近想为我的一个插件添加意大利语翻译:WordPress 的 Final Tiles Gallery,所以我打开了插件的 PO 文件,其中包含所有可翻译的字符串,然后我开始逐行翻译我的插件。

Final Tiles Gallery 的意大利 PO 文件

Final Tiles Gallery 意大利 PO 文件的摘录

Final Tiles Gallery 的 PO 文件有大约 350 个条目,翻译它们都需要大约 2 个小时,而且 - 老实说 - 我不觉得这份工作很有吸引力。 当我在翻阅翻译时,我想知道是否有一种方法可以自动翻译我的 PO 文件……

我决定用谷歌翻译 API 做一些试验,并设法编写一个脚本来完成这个确切的任务! 下面,我将逐步引导您,向您展示如何使用我创建的脚本来自动翻译您的 WordPress 插件或主题。

WordPress 和语言

我必须承认我从来没有非常担心翻译我的插件。 我是意大利人,但我总是使用英文的程序和操作系统。 使用任何非英语的用户界面都感觉很“奇怪”。 也许这只是我

来自世界各地的数以百万计的不同背景、语言和文化的人都在使用 WordPress。 我们不能忽略翻译我们的插件和主题。

WordPress 被来自世界任何地方的具有任何背景、语言和文化的数百万人使用。 我们不能忽略翻译我们的插件和主题。Tweet

我使用 Freemius 销售我的插件,它有一个漂亮的仪表板,其中包含非常有用的分析和统计信息。 几天前,我查看了您在他们的Developer Dashboard中找到的“Top 10 Languages”表,虽然我知道安装Final Tiles Gallery的许多网站都不是英文的,但我很惊讶地发现发现在大约 25,000 次安装的样本中,只有不到 50% 的网站是英文的! 这是概述:

按国家/地区划分的总安装量

如您所见,法语、德语和俄语占用户的很大比例,总用户数接近 20%。

翻译插件或主题的好处

对于 WordPress 插件或主题业务,翻译我们的产品也是一个营销机会,原因有很多:

更大的观众

并非所有 WordPress 用户都愿意安装没有其语言翻译的插件。 这可能有很多原因,但主要是因为他们可能不懂英语。

在其他情况下,用户可能理解英语,但只是更喜欢他们自己的语言。 因此,如果在两个相似的插件之间进行选择,这些客户会选择他们语言中的一个,即使另一个插件更好一点。

这也可能与文化原因有关。 例如,由于历史原因,尤其是老一代法国人不喜欢英语。 如果你用谷歌搜索“为什么法国人讨厌英语”,你会发现几十篇关于这个话题的文章。 此外,实际上只有大约 40% 的法语会说这种语言。 因此,如果您的产品没有翻译成法语,您将立即失去 60% 的法语 WordPress 市场份额。 如果你的产品有法国的替代品,你可能会失去它们,或者至少失去绝大多数。 类似的分析也适用于日本等许多尚未“美国化”的亚洲国家。

WordPress.org 搜索引擎优化

Freemius 首席执行官 Vova Feldman 在 WordPress.org 存储库上写了一些关于翻译对 SEO 的好处的文章,但怎么强调都不过分。 事实上,repo 上的搜索算法对 readme.txt 中不同语言的使用高度敏感。

将您的翻译工作不仅集中在您的产品字符串上,而且还集中在您的 readme.txt 上,这可以增加您在 repo 上的营销范围。 虽然大多数用户使用英语进行搜索,但根据上面提到的 WordPress.org 的语言环境统计数据,很明显有许多用户不使用英语进行搜索,因此只能有限访问这些用户可用的许多插件和主题谁懂英语。

该算法会根据给定 WordPress 安装的语言环境给出不同的结果——翻译您的产品克服了这一障碍,让您无法接触到通常无法接触到的用户。

Vova 说得非常好,他说:“底线——翻译现在比以往任何时候都更重要!” – 一年多过去了,它仍然是正确的。

名声

翻译您的插件或主题对您的客户有一些积极的心理影响。 以客户自己的语言提供翻译的插件或主题可以被视为更高质量的产品。 这意味着开发人员投入的时间不仅仅是技术问题。 客户将认识到这一价值,并因此希望以不同的方式看到您的产品质量。

以您自己的语言提供翻译的插件或主题可以被视为高质量的产品。 这意味着开发人员花时间处理的不仅仅是技术问题。Tweet

贡献者

如果您提供免费插件或主题,则将翻译添加到您的插件或主题可以在 WordPress.org 存储库上创建自愿翻译的连锁效应。 即使只翻译了几种语言的插件也被认为比完全没有翻译的插件更受欢迎,因此志愿者可能更愿意做出贡献。

Gutenberg 插件的翻译统计信息

Gutenberg 插件的一些翻译统计列表

因此,既然我们了解了翻译产品的好处,那么下一个问题是:我们应该支持多少种语言?

选择支持的语言

让我们首先说您可以支持的语言数量没有限制。 但是,在将您的插件或主题翻译成所有这些之前,我们需要考虑一些事情。

问题是,如果您使用谷歌翻译翻译每种语言,则不可避免地会出现错误的翻译。 由此产生的问题是,您可能会收到有关插件或主题中不正确翻译的用户反馈。

为了解决这个问题,我建议从最流行的语言开始,这种数据可以从3个地方获得。 第一个是 Freemius 开发者仪表板,如上所述。 如果您不使用 Freemius,另一个有用的选项是 WordPress.org 统计页面,该页面显示最流行的 WordPress 语言环境。 另一个可靠的选择是查看您产品网站的 Google Analytics(分析)统计信息。

订阅并获取我们的免费副本

WordPress 插件商业书籍

究竟如何在订阅经济中创造繁荣的 WordPress 插件业务。

与朋友分享

输入您朋友的电子邮件地址。 我们只会通过电子邮件向他们发送这本书,童子军的荣幸。

谢谢你的分享

太棒了——“The WordPress Plugin Business Book”的副本刚刚发送到. 想帮助我们更多地传播信息吗? 继续,与您的朋友和同事分享这本书。

感谢订阅!

- 我们刚刚将您的“The WordPress Plugin Business Book”副本发送到.

您的电子邮件中有错字吗? 单击此处编辑电子邮件地址并再次发送。

封面
封面

无论数字指向何处,您都可以选择使用受众最多的语言。 如果您先向这些受众提供一些翻译,您可以在公开发布之前请您的一些客户或同事审阅这些翻译,这样您就不会被客户关于小翻译问题的反馈所淹没。 Fiverr 也有大量的专业人员可以帮助确认您的翻译。您可以通过在插件或主题的 WP 管理设置中添加通知来进一步减少您的支持负担,以通知用户在 WordPress.org 存储库上建议翻译更新,而不是提交支持票。

遵循每种语言的分步流程是一种合乎逻辑的方式,因此您可以获得高质量的翻译并防止您的支持队列因大量小票而溢出。

使用 Google Translate API 翻译您的插件/主题

Google Cloud 提供了一个 API,以便您可以将翻译作为服务使用。

谷歌翻译 API 定价

API 的第 3 版在每月 500,000 个字符之前是免费的,如果超出配额,则每百万个字符 20 美元。 您可以在此处阅读定价详情。

翻译 API 定价

Google 翻译 API 定价(2019 年 5 月)

快速旁注——国际化

所有插件都必须在本地化之前进行国际化。 一个很好的起点是 WordPress.org guide I18n for WordPress Developers,它解释了这些步骤。 创建 .pot/.po 文件后,您可以继续下面的脚本编写过程。

所有插件都必须在本地化之前进行国际化。 一个很好的起点是 WordPress.org 指南 I18n for WordPress Developers,它解释了这些步骤。Tweet

让我们编写脚本!

在我们可以运行脚本之前,我们需要在 Google Cloud 控制台中创建一个新项目。 如果您需要有关此任务的帮助,请查看本指南或按照以下步骤操作:

  1. 转到 https://console.developers.google.com 并登录。
  2. 单击“无组织”或选择您喜欢的组织(我们假设您没有):

谷歌云选择组织

3. 点击“新建项目”:

谷歌云新项目

4. 输入项目名称,点击“创建”:

新的谷歌云项目

5. 现在您应该被重定向到控制台仪表板。 点击“启用 API 和服务”:

谷歌云控制台信息中心

6. 搜索“云翻译API”:

谷歌云 API 库

7. 点击“启用”:

启用云翻译 API

现在我们有了一个项目,我们需要设置一个服务帐户来授权我们对 Google API 的请求。 您可以从 Google Cloud 平台执行本指南中的步骤 1 和 2,否则请执行以下步骤:

  1. 从主菜单转到“服务帐户”部分:“IAM 和管理员”:

谷歌云 IAM 和管理员

2. 点击“创建服务帐号”:

谷歌云创建服务帐号

3. 输入服务帐户的名称和描述,然后单击“创建”:

4.点击“继续”跳过角色选择,因为我们不需要它:

谷歌云服务账户创建

5. 现在单击“创建密钥”,然后单击“创建”,确保您选择了 JSON 格式:

谷歌云服务账户创建密钥启用

6. 创建密钥后,浏览器会自动下载。 记住要保存文件的文件夹,因为我们稍后会需要它。

现在一切准备就绪,但在运行脚本之前,请确保您已按照指南中的说明设置了 GOOGLE_APPLICATION_CREDENTIALS 环境变量:

示例:Linux 或 macOS

[PATH]替换为包含您的服务帐户密钥的 JSON 文件的文件路径。

export GOOGLE_APPLICATION_CREDENTIALS="[PATH]"

例如:

export GOOGLE_APPLICATION_CREDENTIALS="/home/user/Downloads/service-account-file.json"

示例:窗口:

[PATH]替换为包含您的服务帐户密钥的 JSON 文件的文件路径,并将[FILE_NAME]替换为文件名。

使用 PowerShell:

$env:GOOGLE_APPLICATION_CREDENTIALS="[PATH]"

例如:

$env:GOOGLE_APPLICATION_CREDENTIALS="C:\Users\username\Downloads\[FILE_NAME].json"

使用命令提示符:

set GOOGLE_APPLICATION_CREDENTIALS=[PATH]

现在我们已经完成了无聊的事情,我们可以开始翻译了!

  1. 从 https://github.com/GreenTreeLabs/po-gtranslator 克隆存储库
    1. 打开命令行并运行以下命令:
    2. Git 克隆 https://github.com/GreenTreeLabs/po-gtranslator.git
    3. 如果你没有安装 git,你可以在这里下载。
  2. 进入目录po-translator:

cd po-gtranslator

  1. 安装依赖项:

npm install

  1. 如果您没有 npm 实用程序,请务必从此处安装 Node.js。
  2. 使用所有需要的参数运行脚本:

node po-gtranslator.js --project_id=final-tiles-gallery --po_source=it.po --po_dest=it_IT.po --mo=it.mo --lang=it

让我们看一下每个参数:

--project_id :你的谷歌项目的ID,你可以从谷歌云控制台获取

--po_source : 要翻译的空 PO 文件的路径

--po_dest : 带有翻译的 PO 文件的路径

--mo : MO 文件的路径

--lang : 你要翻译的语言的代码

请注意,源 PO 文件将保持未翻译状态,它可用于根据需要生成尽可能多的语言。 您需要添加到插件或主题中的 PO 文件是您作为 –po_dest 传递的文件,它对于每种语言都是唯一的。

自动翻译在行动!
po-gtranslator.js 在行动!

感谢您和我一起编写脚本!

弄清楚这个过程对我来说是一次有趣的学习经历,我希望它对您的翻译工作有所帮助。 与我联系@GreenTreeLabs 或在下方评论任何问题或反馈。