JSON-LD 和元标记

Jac*_*ack 4 html meta-tags rich-snippets schema.org json-ld

我正在处理我客户的网站并试图找出原因以及如何使用丰富的片段。让我感到困惑的是这些片段如何与元标记一起工作。

假设我有以下元标记和这个 JSON-LD 片段:

<title>Beachwalk Beachwear & Giftware</title>
<meta name="description" content="Cloths for sale." />
<h1>Cheap cloths for sale</h1>
Run Code Online (Sandbox Code Playgroud)
<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "LocalBusiness",
  "address": {
    "@type": "PostalAddress",
    "addressLocality": "Mexico Beach",
    "addressRegion": "FL",
    "streetAddress": "3102 Highway 98"
  },
  "description": "A superb collection of fine gifts and clothing.",
  "name": "Beachwalk Beachwear & Giftware",
  "telephone": "850-648-4200"
}
</script>
Run Code Online (Sandbox Code Playgroud)

如果我已经在使用元标记,那么使用这些片段有什么意义?我是否应该在具有相同属性的每个页面上使用相同的片段?例如相同的开放时间、电子邮件和电话?

或者片段描述只是页面的简短摘要?和名字一样,应该和那个一样h1吗?

uno*_*nor 5

纯HTML link/ meta/title元素head元素总是适用于整个文档:

  • 在关于组织的页面中,该title元素给出了网页的标题,而不是组织的名称(它包含名称,但通常包含附加内容)。

  • 在画廊页面中,meta-description元素给出了画廊的描述,而不是它包含的所有图像。

但是,如果您想对本文档中描述的实体发表一些看法(例如,给出组织名称,给出图库中每个图像的信息),该怎么办?

JSON-LD 可以在这里提供帮助,结合 Schema.org 等词汇表。它使您不仅可以提供有关网页的结构化数据,还可以提供有关此页面中描述的实体的结构化数据。例如,我可以说一个网页由组织 A 发布,并且包含有关不同组织 B 的内容:

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

  "@type": "WebPage",

  "publisher": {
    "@type": "Organization",
    "name": "A"
  },

  "mainEntity": {
    "@type": "Organization",
    "name": "B"
  }

}
</script>
Run Code Online (Sandbox Code Playgroud)

JSON-LD 的替代方案是 Microdata 和 RDFa。它们不是在script元素中提供数据(从而复制它),而是使用您现有的 HTML 标记。在此处查看概述和示例。