如何幫 WordPress 佈景主題製作語言包
這篇文章主要跟大家分享如何幫 WordPress 佈景主題製作語言包
從這篇文章你會知道:
- 什麼是Text Domain?
- 如何設定Text Domain
- 如何編寫語言包的po檔
- 如何將po檔轉成mo檔
什麼是Text Domain?
Text Domain是設定語言包需要的參數,必須是唯一的標識符號。在命名上有幾個規則:1. 不能使用下底線、只能使用破折號。2. 英文只能使用小寫。3. 可以使用數字。習慣上會使用佈景主題的資料夾名稱做為Text Domain。簡單說:只要設定好Text Domain就幾乎完成了語言包的設定了。
如何設定Text Domain?
Text Domain通常會有三個地方需要設定
1) 在functions.php定義佈景主題的Text Domain
function my_theme_setup(){
load_theme_textdomain( 'my-theme', get_stylesheet_directory() . '/languages' );
// 語言包的路徑在主題包內的languages資料夾底下
}
add_action( 'after_setup_theme', 'my_theme_setup' );
2) 在style.css頂部添加Text Domain
/*
* Theme Name: My Theme
* Author: Theme Author
* Text Domain:my-theme
*/
3) 需要翻譯的字串添加Text Domain
__( 'Post', 'my-theme' )
_e( 'Post', 'my-theme' )
_n( '%s post', '%s posts', $count, 'my-theme' )
如何編寫語言包的po檔
在之前的步驟中、我們定義語言包的路徑在主題包內的languages資料夾底下,因為我們現在必預在 wordpress-root/wp-content/themes/主題包/languages/ 底下建立po檔案。如果需要建立繁體中文的語言包,則需要新增一個zh_TW.po檔案。檔案內容如下:
msgid "Post"
msgstr "文章"
msgid "%s post"
msgstr "%s 篇文皁"
在上面的檔案中,msgid 之後是原文字串,msgstr之後是中文字串。
將po檔轉成mo檔
這個步驟我們可以使用線上工具直接轉檔、或者下載poedit來使用。使用poedit時、只要儲存po檔就會自動產生同名的mo檔、非常的方便。
接下來只要到wordpress後台修改語系為繁體中文、就可以看到剛剛所做的翻譯成果囉。
〖參考資料來源〗:
- wordpress Internationalization:https://developer.wordpress.org/themes/functionality/internationalization/
- Poedit官網:https://poedit.net/
以上就是歐斯瑞本次 『如何幫 WordPress 佈景主題製作語言包』 的分享
記得訂閱歐斯瑞的電子報、追蹤臉書粉絲團及IG,收到更多相關實用資訊!也歡迎與我們聯繫。
我要留言