我试图弄清楚如何使用Schema.org对象isPartOf
中的属性。WebPage
据我了解,这应该用于指定您的页面是集合的一部分。所以我有一个曲棍球队名单,然后是球员名单。我的理解是单个玩家将成为团队的一部分,所以大概在玩家 HTML 页面上,我会添加该isPartOf
元素。
但我不确定如何添加它。我应该将它作为 URL 添加到 pages 集合吗?或者我应该只添加一个meta
带有集合名称的标签?我似乎在任何地方都找不到关于这个元素的太多信息。有谁知道如何正确使用它?
我试图弄清楚如何使用Schema.org对象isPartOf
中的属性。WebPage
据我了解,这应该用于指定您的页面是集合的一部分。所以我有一个曲棍球队名单,然后是球员名单。我的理解是单个玩家将成为团队的一部分,所以大概在玩家 HTML 页面上,我会添加该isPartOf
元素。
但我不确定如何添加它。我应该将它作为 URL 添加到 pages 集合吗?或者我应该只添加一个meta
带有集合名称的标签?我似乎在任何地方都找不到关于这个元素的太多信息。有谁知道如何正确使用它?
我认为您是对的:用于isPartOf
指示页面或文件(播放器)所属的父集合(在本例中为团队)。
所以在播放器的页面上:
<a href="/toronto-maple-leafs/" itemprop="isPartOf">Member of the Toronto Maple Leafs</a>
在团队页面上,确保它被标记为 CollectionPage,例如:
<body itemscope itemtype="http://schema.org/CollectionPage">
该isPartOf
属性(及其逆属性: hasPart
)可用于传达 aCreativeWork
是 another 的一部分CreativeWork
。一个用例是类别页面(示例)。
虽然可以使用 URL 值,但预期的方式是提供CreativeWork
值(WebPage
更具体CreativeWork
):
<div itemscope itemtype="http://schema.org/WebPage">
<h1 itemprop="name">Child page</h1>
<p itemprop="isPartOf" itemscope itemtype="http://schema.org/WebPage">
<span itemprop="name">Parent page</span>
</p>
</div>
<div itemscope itemtype="http://schema.org/WebPage">
<h1 itemprop="name">Parent page</h1>
<p itemprop="hasPart" itemscope itemtype="http://schema.org/WebPage">
<span itemprop="name">Child page</span>
</p>
</div>
然而,如果你想传达一个球员是球队的一部分,你不能使用isPartOf
/ hasPart
,因为球员和球队都不是创造性的作品。您将需要一个可以连接Person
和Organization
项目的合适属性。
Schema.org 现在有适合这种情况的类型和属性:
组织:运动队。
担任运动队表演成员的人;与教练相对的球员。
例子:
<div itemscope itemtype="http://schema.org/SportsTeam">
<ul>
<li itemprop="athlete" itemscope itemtype="http://schema.org/Person"></li>
<li itemprop="athlete" itemscope itemtype="http://schema.org/Person"></li>
<li itemprop="athlete" itemscope itemtype="http://schema.org/Person"></li>
</ul>
</div>
该athlete
属性没有定义逆属性。如果您想在Person
项目中指定此关系,您可以使用非标准itemprop-reverse
属性 ( example ),或者从使用 Microdata 切换到 RDFa ( example ) 或 JSON-LD ( example )。