私は、その人のメインページを開くそれぞれのリンクを持つ人のリストを含むページを持っています。
各リンクには、独自の構造化データが必要です。
私はJSON-LDを使用していますが、 例はMicrodata形式です 。 JSON-LD形式で作成するには、各URLの完全なスクリプトを作成する必要がありますか?
1つのURLのスクリプトは
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "Person",
"address": {
"@type": "PostalAddress",
"addressLocality": "Seattle",
"addressRegion": "WA",
"postalCode": "98052",
"streetAddress": "20341 Whitworth Institute 405 N. Whitworth"
},
"colleague": [
"http://www.xyz.edu/students/alicejones.html",
"http://www.xyz.edu/students/bobsmith.html"
],
"email": "mailto:[email protected]",
"image": "janedoe.jpg",
"jobTitle": "Professor",
"name": "Jane Doe",
"telephone": "(425) 123-4567",
"url": "http://www.janedoe.com"
}
</script>
1ページに15人のリストがあるとします。これらの15個のスクリプトを別々に記述する必要がありますか、それともJSON-LDを記述する他の方法がありますか?
いくつかのオプションがあります:
ItemList
としてPerson
アイテムを最上位アイテムとして提供する(つまり、他のタイプのプロパティの値としてネストしない)場合は、 複数のscript
要素を使用するか、@graph
で1つのscript
要素を使用します :
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "Person"
}
</script>
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "Person"
}
</script>
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@graph":
[
{
"@type": "Person"
},
{
"@type": "Person"
}
]
}
</script>
Person
アイテムを他のタイプのプロパティの値として提供する場合は、 値としての配列 を使用します。
例: Organization
があり、 Person
プロパティで使用されているemployee
sを参照したい場合:
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "Organization",
"employee":
[
{
"@type": "Person"
},
{
"@type": "Person"
}
]
}
</script>
Person
アイテムをリストとして提供する場合は、 ItemList
type を使用できます。
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "ItemList",
"itemListElement": [
{
"@type": "Person"
},
{
"@type": "Person"
}
]
}
</script>
リストにプロパティBreadcrumbListを適用できます。このようなもの:
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"name": "Name of the list",
"description": "Description of the list",
"itemListElement":
[
{
"@type": "ListItem",
"position": 1,
"item":
{
"@type": "Person",
"@id": "https://example.com/person1",
"name": "name of person1"
}
},
{
"@type": "ListItem",
"position": 2,
"item":
{
"@type": "Person",
"@id": "https://example.com/person2",
"name": "name of person2"
}
}
]
}