在 Web 应用开发中,多语言支持是一个重要的需求,尤其是对于国际化网站或应用。JSON-LD(JSON for Linked Data)作为一种结构化数据标记语言,提供了多种方式来实现多语言支持。本文将详细介绍如何在 JSON-LD 中同时描述多种语言的内容,帮助开发者更好地实现多语言结构化数据。
多语言支持的主要目的是为不同语言的用户提供一致且准确的体验。对于 JSON-LD 结构化数据来说,多语言支持可以帮助:
在 JSON-LD 中,可以通过以下几种方式实现多语言支持:
@language
关键字@language
关键字用于指定文本的语言。可以通过数组的形式为同一属性提供多种语言的版本。
示例:使用 @language
关键字
{
"@context": "https://schema.org",
"@type": "Product",
"name": [
{
"@value": "示例产品",
"@language": "zh"
},
{
"@value": "Example Product",
"@language": "en"
}
],
"description": [
{
"@value": "这是一个示例产品的描述。",
"@language": "zh"
},
{
"@value": "This is a description of the example product.",
"@language": "en"
}
]
}
说明:
name
和 description
属性提供多种语言的版本。@value
指定文本内容,通过 @language
指定语言代码(例如 zh
表示中文,en
表示英语)。Language
类型Schema.org 提供了 Language
类型,可以用于描述多语言内容。通过嵌套 Language
类型,可以为同一属性提供多种语言的版本。
示例:使用 Language
类型
{
"@context": "https://schema.org",
"@type": "Product",
"name": {
"@type": "Language",
"zh": "示例产品",
"en": "Example Product"
},
"description": {
"@type": "Language",
"zh": "这是一个示例产品的描述。",
"en": "This is a description of the example product."
}
}
说明:
Language
类型为 name
和 description
属性提供多种语言的版本。zh
、en
)直接指定。ItemList
类型如果需要为同一属性提供多种语言的版本,并且每种语言版本需要更复杂的结构(例如包含额外的元数据),可以使用 ItemList
类型。
示例:使用 ItemList
类型
{
"@context": "https://schema.org",
"@type": "Product",
"name": {
"@type": "ItemList",
"itemListElement": [
{
"@type": "Language",
"name": "示例产品",
"language": "zh"
},
{
"@type": "Language",
"name": "Example Product",
"language": "en"
}
]
},
"description": {
"@type": "ItemList",
"itemListElement": [
{
"@type": "Language",
"name": "这是一个示例产品的描述。",
"language": "zh"
},
{
"@type": "Language",
"name": "This is a description of the example product.",
"language": "en"
}
]
}
}
说明:
ItemList
类型为 name
和 description
属性提供多种语言的版本。Language
类型描述,包含 name
和 language
属性。在实现 JSON-LD 多语言支持时,需要注意以下几点:
zh
表示中文,en
表示英语)。如果需要区分地区变体,可以使用扩展语言代码(例如 zh-CN
表示简体中文,zh-TW
表示繁体中文)。在 JSON-LD 中实现多语言支持时,可以通过以下方式同时描述多种语言的内容:
@language
关键字:通过数组形式为同一属性提供多种语言的版本。Language
类型:直接为属性指定多种语言的版本。ItemList
类型:为需要复杂结构的属性提供多种语言的版本。通过合理使用这些方法,可以为多语言网站或国际化应用提供清晰、准确的结构化数据,从而提升搜索引擎的可见性和用户体验。
附录: