如何使用谷歌翻譯自動翻譯 WordPress 插件和主題
已發表: 2019-07-31我們都聽說過 WordPress 現在支持超過 33% 的網站的統計數據,但是您如何確保您的插件或主題可以在生態系統中盡可能廣泛地使用?
令人驚訝的是,只有不到一半的 WordPress 網站將其語言環境設置為英語! 如果您尚未設置翻譯,這意味著超過 50% 的潛在客戶可能無法以他們最了解的語言使用您的產品。
向世界開放產品的最佳方法之一是為所有面向用戶的文本創建高質量的翻譯,但問題是翻譯需要大量時間(整個產品中的文本越多,字符串越多)翻譯)。 翻譯還需要精通不同的語言,了解如何管理 MO 和 PO 文件,總體而言,需要付出很多努力。
我的名字是 Diego Imbriani,自 2011 年以來我就是一名插件開發人員,我一直通過我的公司 GreenTreeLabs 銷售我的插件,我的產品目前活躍在全球約 70,000 個網站上。
值得慶幸的是,我找到了一種方法來幫助減輕整個翻譯過程,並使翻譯插件和主題變得更加容易。
介紹
我最近想為我的一個插件添加意大利語翻譯:WordPress 的 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 插件的一些翻譯統計列表
因此,既然我們了解了翻譯產品的好處,那麼下一個問題是:我們應該支持多少種語言?
選擇支持的語言
讓我們首先說您可以支持的語言數量沒有限制。 但是,在將您的插件或主題翻譯成所有這些之前,我們需要考慮一些事情。
問題是,如果您使用谷歌翻譯翻譯每種語言,則不可避免地會出現錯誤的翻譯。 由此產生的問題是,您可能會收到有關插件或主題中不正確翻譯的用戶反饋。
為了解決這個問題,我建議從最流行的語言開始,這種數據可以從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 美元。 您可以在此處閱讀定價詳情。
Google 翻譯 API 定價(2019 年 5 月)
快速旁注——國際化
所有插件都必須在本地化之前進行國際化。 一個很好的起點是 WordPress.org guide I18n for WordPress Developers,它解釋了這些步驟。 創建 .pot/.po 文件後,您可以繼續下面的腳本編寫過程。
所有插件都必須在本地化之前進行國際化。 一個很好的起點是 WordPress.org 指南 I18n for WordPress Developers,它解釋了這些步驟。Tweet
讓我們編寫腳本!
在我們可以運行腳本之前,我們需要在 Google Cloud 控制台中創建一個新項目。 如果您需要有關此任務的幫助,請查看本指南或按照以下步驟操作:
- 轉到 https://console.developers.google.com 並登錄。
- 單擊“無組織”或選擇您喜歡的組織(我們假設您沒有):
3. 點擊“新建項目”:
4. 輸入項目名稱,點擊“創建”:
5. 現在您應該被重定向到控制台儀表板。 點擊“啟用 API 和服務”:
6. 搜索“雲翻譯API”:
7. 點擊“啟用”:
現在我們有了一個項目,我們需要設置一個服務帳戶來授權我們對 Google API 的請求。 您可以從 Google Cloud 平台執行本指南中的步驟 1 和 2,否則請執行以下步驟:
- 從主菜單轉到“服務帳戶”部分:“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]
現在我們已經完成了無聊的事情,我們可以開始翻譯了!
- 從 https://github.com/GreenTreeLabs/po-gtranslator 克隆存儲庫
- 打開命令行並運行以下命令:
- Git 克隆 https://github.com/GreenTreeLabs/po-gtranslator.git
- 如果你沒有安裝 git,你可以在這裡下載。
- 進入目錄po-translator:
cd po-gtranslator
- 安裝依賴項:
npm install
- 如果您沒有 npm 實用程序,請務必從此處安裝 Node.js。
- 使用所有需要的參數運行腳本:
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 或在下方評論任何問題或反饋。