什么 JSON-LD 结构化数据用于多段落、多图像博客文章?

What JSON-LD structured data to use for a multi-pararaph, multi-image blogpost?

我在我的博客中为博文创建了以下 JSON-LD:

{
      "@context": "http://schema.org",
      "@type": "BlogPosting",
      "mainEntityOfPage": {
        "@type": "WebPage",
        "@id": "https://www.example.com"
      },
      "headline": "My Headline",
      "articleBody": "blablabla",      
      "articleSection": "bla",
      "description": "Article description",
      "inLanguage": "en",
      "image": "https://www.example.com/myimage.jpg",
      "dateCreated": "2019-01-01T08:00:00+08:00",
      "datePublished": "2019-01-01T08:00:00+08:00",
      "dateModified": "2019-01-01T08:00:00+08:00",
      "author": {
        "@type": "Organization",
        "name": "My Organization",
        "logo": {
          "@type": "ImageObject",
          "url": "https://www.example.com/logo.jpg"
        }
      },
       "publisher": {
        "@type": "Organization",
        "name": "Artina Luxury Villa",
         "name": "My Organization",
        "logo": {
          "@type": "ImageObject",
          "url": "https://www.example.com/mylogo.jpg"
        }
      }
    }

现在,我有一些包含多个段落的博文,每个段落都附有一张图片。有什么想法可以用 JSON-LD 来描述这样的结构吗?

背景

我创建了一个简单的博客,它使用 JSON 文件用于两个目的:(a) 为博客提供帖子而不是使用数据库(通过使用 XMLHttpRequestJSON.parse ) 和 (b) 将 JSON-LD 结构化数据添加到代码中以用于 SEO 目的。

当我阅读 JSON 文件时,我必须知道哪个图像属于文本的哪个段落才能正确显示它。

注意:您似乎只需要将其用于内部用途,并且通常不需要public盟友提供有关此类结构的数据,我认为最好 而不是 提供有关它的 public Schema.org 数据。因此,例如,您可以使用它来构建页面,然后再次将其删除(或任何适合您的情况)。然后也可以为此使用自定义词汇表(在您自己的域下),如果它更适合您的需要的话。


您可以对每个段落+图像块使用 hasPart property to add a WebPageElement

每个 WebPageElement 可以有 text and image(如果需要嵌套它们,同样可以有 hasPart)。

注意 JSON-LD 数组默认是无序的。您可以使用 @list 使其有序。

"hasPart": { "@list":
  [

    {
      "@type": "WebPageElement",
      "text": "plain text",
      "image": "image-1.png"
    },

    {
      "@type": "WebPageElement",
      "text": "plain text",
      "image": "image-2.png"
    }

  ]
}

对于博文的 header/footer,您可以使用更具体的 WPHeader/WPFooter 而不是 WebPageElement