链接不同页面中的架构标记

Linking up Schema markup in different pages

那么,Google 和其他搜索引擎在链接同一网站的不同页面中的模式标记方面有多好?

我正在用 Organization type 标记主页。

{
  "@context":"https://schema.org",
  "@type":"Organization"
  "@id":"https://example.com\/#organization",
  "legalName":"My company",
  "email":"contact@example.com"
}

每门课程的页面都标有 Course type

{
  "@context":"https://schema.org",
  "@type":"Course"
  "@id":"https://example.com/course/1#course1",
  "description": "Webmaster"
}

我可以指望 google 和其他搜索引擎了解“网站管理员”课程是由主页中描述的“我的公司”组织提供的吗?

我的意思是,它们都定义在同一个网站上,应该很明显。

现在,我可以在课程的 author 属性 中定义组织类型。

{
  "@context":"https://schema.org",
  "@type":"Course"
  "@id":"https://example.com/course/1#course1",
  "description": "Webmaster",
  "author": {
    "@context":"https://schema.org",
    "@type":"Organization"
    "@id":"https://example.com\/#organization",
    "legalName":"My company",
    "email":"contact@example.com"
  }
}

我也可以用 graph 属性.

定义这两种类型。
{
  "@context":"https://schema.org",
  "@graph": [
    "@type":"Course"
    "@id":"https://example.com/course/1#course1",
    "description": "Webmaster",
  }, 
  {
    "@context":"https://schema.org",
    "@type":"Organization"
    "@id":"https://example.com\/#organization",
    "legalName":"My company",
    "email":"contact@example.com"
  }
}

但是我需要吗?不能google根据它们在同一个网站中定义的事实来简单地推断出它们之间的关系吗?

how good is Google and other search engines in linking schema markup in different pages of the same website?

就像你告诉他们的那样好。

Can I count on google and other search engines to understand that Course "Webmaster" is being provided by the Organization "My company" describe in the home page?

要创建相关数据,从代表课程的网页内容的层次结构开始可能很重要。如果内容的主题是一门课程,那么在内容中明确指定课程的名称和描述可能是有意义的。由于每门课程都有提供者,因此将课程提供者的名称指定为整个课程的 sub-subject 也是有意义的。

从具有层次结构的课程的主要内容 - 提供者轻松导航到相关数据。 Google 的一般结构化数据指南告诉我们:

Relevance Your structured data should be a true representation of the page content.

类型Course可以指定为top-level结构化数据类型,该类型将代表网页主要内容的主题。此类型有一个提供程序 属性,您可以在其中嵌套类型 Organization.

的标记

在这一步,您必须再次return到主要内容。如果内容中显示的课程有一个特定的提供者,则在网页内容中包含有关提供者组织的完整信息可能是有意义的。这同样适用于在具有不同提供商的不同网页上呈现的许多课程。但是,如果许多课程只有一个提供者,那么在单独网页的内容中表示提供者组织是有意义的,并且对于各个课程的提供者名称的所有引用,只需 link 到网页代表提供者组织。这将使提供者组织规范化并消除重复内容。在表示提供商组织的内容中,您可以指定该提供商提供的所有课程,这些课程在整个网站级别可用。并创建 backlinks 到代表这些课程的单独网页。这将在提供者和他们教授的课程之间创建 link。

至此,我们可以回到结构化数据,使用主要内容: 如果课程只有一个提供者,并且在网页内容中标明了完整信息,那么在结构化数据中,需要标明提供者组织的完整信息,例如:

{
  "@context":"https://schema.org",
  "@type":"Course",
  "@id":"https://example.com/course/1#course1",
  "name": "Webmaster", 
  "description","zzzzz",
  "provider":{
  "@type":"Organization",
  .... (full info) 
  }  
}

如果内容有一个 link 表示提供商组织的单独网页,那么在结构化数据中,您只能指定提供商的名称和网页的 link,例如:

{
  "@context":"https://schema.org",
  "@type":"Course",
  "@id":"https://example.com/course/1#course1",
  "name": "Webmaster", 
  "description","zzzzz",
  "provider":{
  "@type":"Organization",
  "name": "Webmaster", 
  "url":"https://example.com/provider"
  }  
}

对于在单独的网页上表示提供者组织的结构化数据,使用属性 hasOfferCatalog or makesOffer 指定提供的课程并嵌入所需的类型可能是有意义的返回links 到包含单独课程的网页。

以上所有内容都可以提供代表特定提供者组织提供的课程或课程的相关数据。

Google recommendation可以帮助创建相关的结构化数据:

Completeness

Specify all required properties for your rich result type. Items that are missing required properties are not eligible for rich results. The more recommended properties that you provide, the higher quality the result is to users. ...Rich result ranking takes extra information into consideration.