JSON データの翻訳方法
Web アプリケーションの中には、JSON 形式のデータを使用して通信が行われるケースがあります。
デフォルトでは、JSON オブジェクトはアプリケーションを壊す可能性があるため、翻訳しませんが、JSON キーを定義することで、Transeed Web を使用して翻訳することができます。
※ JSON データに編集を加えていただく必要があります。
事例
元の JSON 例:
{
"name":"test",
"description":"test description",
"id":500,
"months": ["January","February","March"],
"content":"<i>Hello world</i>",
"user": {
"login":"test",
"bio":"test user"
}
}
どの情報を翻訳するのか、「gt_translate_keys」を使用し、翻訳対象のキーを設定します。
以下例:
{
"name":"test",
"description":"test description",
"id":500,
"months": ["January","February","March"],
"content":"<i>Hello world</i>",
"gt_translate_keys": ["name", "description", {"key": "months", "format": "list"}, {"key": "content", "format": "html"}],
"user": {
"login":"test",
"bio":"test user",
"gt_translate_keys": [{"key": "bio", "format": "text"}]
}
}
※ 上記の太字の部分が追加した内容になります。
※「gt_translate_keys」は、配列(array)の形式で記述します。
キーの指定方法
キーの指定方法は以下の2種類あります。
- 「
"name", "description"
」の部分のように、カンマ(,)区切りでキーを表記する方法 - 「
{"key": "months", "format": "list"}
」のように、キー内のデータのフォーマットを指定する方法
データのフォーマット
※ データフォーマットの種類は以下の選択肢があります:
- list:複数アイテムの配列(array)(上記例では「months」に該当)
- html:通常のHTML
- text:文字データ(何も指定しなければ、デフォルトで text として判断されます)
- html-list:HTML の配列
- html-urlencoded
- html-base64encoded
- url
- domain
- json
「gt_translate_keys」記述文法:
"gt_translate_keys": ["key1", "key2", {"key": "key3", "format": "format-type"}]
上記の例を Transeed を通してロシア語に翻訳すると、
以下のようになります:
{
"name":"тест",
"description":"тестовое описание",
"id":500,
"months": ["Январь","Февраль","Март"],
"content":"<i>Привет мир</i>",
"user": {
"login":"test",
"bio":"тестовый пользователь"
}
}