Magento2 建立中文翻譯語言包
大家好!
今天歐斯瑞要教大家在 Magento2 系統中建立中文翻譯的語言包
我們要在系統上開始建立語言包,首先先確認 /app/i18n/ 資料夾是否存在?若不存在就請建立此資料夾
接著建立資料夾 /app/i18n/[Vendor名稱]/[Package名稱]/
以歐斯瑞為例,我將會建立資料夾在i18n下,/app/i18n/Astralweb/zh_hant_tw/
接著在建立以下三個檔案
- composer.json
- language.xml
- registration.php
以下為檔案的個別範例
composer.json
{ "name": "Astralweb/language-zh_hant_tw", "description": "Traditional Chinese Language Package", "version": "100.0.1", "license": [ "OSL-3.0", "AFL-3.0" ], "require": { "magento/framework": "100.0.*" }, "type": "magento2-language", "autoload": { "files": [ "registration.php" ] } }
name | Vendor名稱加上Package名稱 (請依照之前所建立的資料夾填入相對應的值 |
description | 該模組的描述,這裡可以任意敘述 |
version | 模組的版本號 |
license | 該模組所採用的憑證 |
require | 使用此模組必需要有的功能模組 (此處請依照範例 |
type | 此模組的類型 (此處請依照範例 |
autoload | 自動載入(此處請依照範例 |
language.xml
<?xml version="1.0"?> <!-- /** * Copyright © 2015 Magento. All rights reserved. * See COPYING.txt for license details. */ --> <language xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:App/Language/package.xsd"> <code>zh_Hant_TW</code> <vendor>Astralweb</vendor> <package>zh_hant_tw</package> </language>
code | 語言包的語言代碼 ( zh_Hant_TW為繁體中文 |
vendor | Vendor名稱 (請依照之前所建立的資料夾填入相對應的值 |
package | Package名稱 (請依照之前所建立的資料夾填入相對應的值 |
registration.php
<?php /** * Copyright © 2015 Magento. All rights reserved. * See COPYING.txt for license details. */ \Magento\Framework\Component\ComponentRegistrar::register( \Magento\Framework\Component\ComponentRegistrar::LANGUAGE, 'astralweb_zh_hant_tw', __DIR__ );
Component Name | 填入你的模組的路徑,依本範例需填入的值為 astralweb_zh_hant_tw |
在將所需的資料夾以及檔案準備好之後,需登入到你的 Magento2 的伺服器上,並且執行指令
首先使用 SSH 登入網站伺服器後,移動到
cd magento2目錄/app/i18n/[Vendor名稱]/[Package名稱]/
範例: cd /var/www/html/app/i18n/Astralweb/zh_hant_tw/ |
接著輸入指令
php magento2目錄/bin/magento i18n:collect-phrases -o “zh_Hant_TW.csv" -m
範例: php /var/www/html/bin/magento i18n:collect-phrases -o “zh_Hant_TW.csv" -m |
輸入完指令之後,系統會將你當前所使用的所有字詞全部整理到你所指定的檔案中
請確認CSV檔案是產生在我們先前所建立的模組資料夾,確認是在同一資料夾後
透過修改CSV就可以翻譯相對應的字詞囉
但使用之前也別忘記將你的前台設定改為繁體中文語系介面
接下來示範如何將對應的字詞做翻譯
下面已登入頁面為例子,我們想將畫面上的 Registered Customers 做翻譯
我們先編輯我們剛剛所產生出來的CSV檔案
使用 Registered Customers 為關鍵字做搜尋,我們可以找到
“Registered Customers","Registered Customers",module,Magento_Customer
接著我們將中文翻譯取代第二個字詞
“Registered Customers","已註冊會員",module,Magento_Customer
儲存上傳CSV檔之後再透過後台刷新快取(refresh cache)
重新整理頁面之後,你就可以發現頁面上的字詞已經被取代囉
以上是本次的教學
如有任何疑問歡迎隨時與我們聯繫,謝謝
相關文章:
Comments (3)
請問在一般的 國外伺服器裡,怎麼執行 php magento2目錄/bin/magento i18n:collect-phrases -o “zh_Hant_TW.csv" -m 的指令?
您好,伺服器都是一樣的,請參考本篇教學文章喔!謝謝
hello, where can I download the language pack?