JSON-LDを使用して複数アドレススキーママークアップに情報を追加するにはどうすればよいですか?
ここに私のコードがあります:
<script type='application/ld+json'>
{
"@context": "http://schema.org",
"@type": "Apartments",
"name": "***",
"url": "***",
"address":
[
{
"@type": "PostalAddress",
"streetAddress": "***",
"addressLocality": "***",
"addressRegion": "***",
"postalCode": "***",
"addressCountry": "Canada"
},
{
"@type": "PostalAddress",
"streetAddress": "***",
"addressLocality": "***",
"addressRegion": "***",
"postalCode": "***",
"addressCountry": "Canada"
}
]
}
</script>
地理座標や営業時間などの情報を追加したいのですが、個々の場所に追加しようとすると、「Expoting 'EOF'」というエラーが表示されます。コードのaddressCountry部分に追加しようとしました。私はそれを間違って配置していると仮定しています。
{
"@type": "PostalAddress",
"streetAddress": "***",
"addressLocality": "***",
"addressRegion": "***",
"postalCode": "***",
"addressCountry": "Canada"
},
"geo": {
"@type": "GeoCoordinates",
"latitude": "***",
"longitude": "***"
},
"openingHours": "Mo, Tu, We, Th, Fr 08:00-20:00 Sa, Su 10:00-16:00",
"contactPoint": {
"@type": "ContactPoint",
"contactType": "Sales",
"telephone": "***"
}
]
}
</script>
まず、使用するSchema.orgの用語について:
例ではApartments
型を使用していますが、これは有効な型ではありません。おそらく Apartment
を意味します。ただし、このタイプには openingHours
プロパティも contactPoint
プロパティも指定できません。また、 PostalAddress
がこれらのプロパティを持つことも、 geo
を持つこともできません。
Apartment
が複数のアドレスを持つことは通常意味がないので、ここで正しいタイプを本当に使用しているかどうかはわかりません。
とにかく、営業時間を提供するために、 openingHoursSpecification
プロパティ(Apartment
の場合)および hoursAvailable
プロパティ(PostalAddress
の場合)を使用できます。
JSON-LDについて:
そのようなプロパティをネストすることはできません。
PostalAddress
ノードにプロパティを追加する場合は、各PostalAddress
の{
}
内にプロパティを追加する必要があります。つまり、両方のノードで同じである場合、それらを繰り返す必要があります。