Несколько групп тегов JSON-LD на одной странице

Могу ли я использовать несколько групп JSON-LD (используя Schema.org) на одной странице?

Если я не могу, как объединить их вместе? Я не настолько знаком с синтаксисом.

Группа 1:

<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "LocalBusiness",
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "3102 Highway 98",
    "addressRegion": "FL",
    "addressLocality": "Mexico Beach",
    "postalCode": "45252",
    "addressCountry": "US",
  },
  "geo": {
    "@type": "GeoCoordinates",
    "latitude": "40.75",
    "longitude": "73.98"
  },
  "name": "Beachwalk Beachwear & Giftware",
  "telephone": "850-648-4200",
  "email": "[email protected]",
  "faxNumber": "860-562-4250",

}
</script>

Группа 2:

<script type="application/ld+json">
{
    "@context": "http://schema.org",
    "@type": "Organization",
    "url": "http://example.com",
    "name": "My Domain Title",
    "logo": "http://example.com/wp-content/uploads/2015/08/abc.jpg",
    "contactPoint": [
        {
            "@type": "ContactPoint",
            "telephone": "0192-39192130",
            "contactType": "customer service"
        },
        {
            "@type": "ContactPoint",
            "telephone": "0182-239120398",
            "contactType": "customer service"
        }
    ],
    "sameAs": [
        "http://facebook.com/myfbaccount",
        "http://twitter.com/mytwitteraccount"
    ]
}
</script>

person wkyip    schedule 29.09.2015    source источник
comment
возможный дубликат Лучшие методы JSON-LD: использование нескольких элементов ‹script›?   -  person unor    schedule 29.09.2015


Ответы (2)


Вы можете либо иметь несколько блоков сценариев на своей странице, либо объединить их в один блок. Самый простой способ объединить их в один блок — использовать ключевое слово @graph следующим образом:

<script type="application/ld+json">
{
  "@graph": [
    { ... your first JSON-LD block ... },
    { ... your second JSON-LD block ... }
  ]
}
</script>
person Markus Lanthaler    schedule 29.09.2015

Согласно спецификации (https://www.w3.org/TR/json-ld/#h3_advanced-context-usage) использование нескольких контекстов возможно с помощью простого списка контекстов:

[
  {
    "@context": "http://example.org/contexts/person.jsonld",
    "name": "Manu Sporny",
    "homepage": "http://manu.sporny.org/",
    "depiction": "http://twitter.com/account/profile_image/manusporny"
  },
  {
    "@context": "http://example.org/contexts/place.jsonld",
    "name": "The Empire State Building",
    "description": "The Empire State Building is a 102-story landmark in New York City.",
    "geo": {
      "latitude": "40.75",
      "longitude": "73.98"
    }
  }
]
person hsrv    schedule 21.03.2017