Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

JSON-LD Schema.org: Multiple video/image page

I can't figure out how you would define a bunch of videos on the same page. i.e. a search page. Let's say you've a site that returns 50 different videos. Then how are you supposed to define this with JSON-LD?

like image 221
KaekeaSchmear Avatar asked May 28 '15 11:05

KaekeaSchmear


1 Answers

If you have multiple items as value of a property, you could use an array:

<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "WebPage",
  "video":
  [
    {
      "@type": "VideoObject"
    },
    {
      "@type": "VideoObject"
    }
  ]
}
</script>

If you have multiple items on the top-level (not as value of a property), you could use a (named) graph and an array:

<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@graph": 
  [
    {
       "@type": "VideoObject"
    },
    {
       "@type": "VideoObject"
    }
  ]
}
</script>

And you could of course use multiple script elements:

<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "WebPage",
  "video": 
  {
    "@type": "VideoObject"
  }
}
</script>

<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "WebPage",
  "video": 
  {
    "@type": "VideoObject"
  }
}
</script>
like image 199
unor Avatar answered Oct 20 '22 01:10

unor