要讓 WordPress 外掛的翻譯檔 (通常是 .mo
和 .po
檔案) 不隨著外掛更新而被覆蓋,最安全且推薦的做法是將它們放在 WordPress 的語言目錄中,並遵循特定的命名規則。
具體來說,你需要將翻譯檔放在以下路徑:
wp-content/languages/plugins/
在這個 plugins
資料夾下,你需要根據外掛的「Text Domain」來命名你的翻譯檔。Text Domain 是外掛在程式碼中用來識別其翻譯字串的唯一標識符。
命名規則如下:
[text-domain]-[locale].mo
[text-domain]-[locale].po
[text-domain]
: 這是外掛的 Text Domain。你可以在外掛的主要檔案 (通常是與外掛資料夾同名的 PHP 檔案) 的註解中找到它。它通常會像這樣定義: PHP<?php /** * Plugin Name: My Awesome Plugin * Description: This is an awesome plugin. * Version: 1.0.0 * Author: Your Name * Text Domain: my-awesome-plugin */
在這個例子中,Text Domain 就是my-awesome-plugin
。[locale]
: 這是 WordPress 的語言代碼。例如:- 繁體中文(台灣)是
zh_TW
- 簡體中文是
zh_CN
- 英文(美國)是
en_US
- 日文是
ja
- 等等。你可以在 WordPress 的設定中找到你網站使用的語言代碼。
- 繁體中文(台灣)是
舉例說明:
假設你的外掛的 Text Domain 是 my-awesome-plugin
,而你的 WordPress 網站語言設定為繁體中文(台灣),那麼你的翻譯檔應該命名為:
wp-content/languages/plugins/my-awesome-plugin-zh_TW.mo
wp-content/languages/plugins/my-awesome-plugin-zh_TW.po
總結步驟:
- 找到外掛的 Text Domain。 查看外掛的主要 PHP 檔案的註解。
- 找到你 WordPress 網站的語言代碼。 在 WordPress 後台的「設定」>「一般」中查看「網站語言」。
- 根據 Text Domain 和語言代碼命名你的
.mo
和.po
檔案。 - 在
wp-content/languages/plugins/
資料夾下建立或上傳這些檔案。 如果languages
或plugins
資料夾不存在,你需要手動創建它們。
為什麼這種方法有效?
WordPress 在載入外掛時,會優先檢查 wp-content/languages/plugins/
目錄下是否存在與該外掛 Text Domain 和當前網站語言相符的翻譯檔。如果找到,WordPress 就會使用這些翻譯,而不會去載入外掛本身目錄下的翻譯檔。這樣,即使外掛更新,其自身的翻譯檔被替換,你的自訂翻譯仍然會被保留。
注意事項:
- 確保你的
.mo
和.po
檔案是正確編譯過的。通常你會先編輯.po
檔案,然後使用 Poedit 或其他翻譯工具將其編譯成.mo
檔案。 - 如果你的外掛使用了不同的 Text Domain 或載入翻譯檔的方式,這種方法可能不適用。但對於遵循 WordPress 標準的外掛來說,這是最推薦的做法。
- 有些外掛可能會提供自己的方式來儲存自訂翻譯,請查閱外掛的官方文件以了解是否有其他推薦的做法。
遵循以上步驟,你就能有效地保護你的 WordPress 外掛翻譯檔,避免在外掛更新時遺失你的工作成果。