我一直试图弄清楚这个谜语。 让我们说我们有一个电视剧集如下,
<main itemscope itemtype="https://schema.org/TVEpisode">
<h1>
<a itemprop="url" href="self.html">
Pokemon - <span itemprop="episodeNumber">88</span>
</a>
</h1>
<h2 itemprop="name">In the Pink</h2>
<p>Source: <span itemprop="partOfSeries">Pokemon</span>
<span itemprop="partOfSeason">Orange Islands</span>
</p>
</main>
现在问题是我无法在这里添加'partOfSeries'的'sameAs'属性。如果我在'partOfSeries'中添加'sameAs'属性的锚点,Google结构化数据测试工具表示它无法找到sameAs属性。我无论如何也不知道这样做。同样适用于'seasonNumber',它是'partOfSeason'的孩子。 如果您也可以帮助'potentialAction'属性,那将是非常棒的。 谢谢
答案 0 :(得分:1)
partOfSeason
property需要Season
type的值
partOfSeries
property需要Series
type的值
您在两种情况下都给出了文本值。
这是not wrong(只是不推荐),但是如果有文字值,则无法提供有关季节/系列的其他数据。
在Microdata语法中,您必须使用itemscope
属性创建新的项,并为其类型指定itemtype
属性:
<span itemprop="partOfSeries" itemscope itemtype="http://schema.org/Series">
<span itemprop="name">Pokemon</span>
</span>
<span itemprop="partOfSeason" itemscope itemtype="http://schema.org/Season">
<span itemprop="name">Orange Islands</span>
</span>
(因为项目中的简单文本不被视为微数据值,您必须使用属性来处理与项目关联的所有内容,例如,在这种情况下,Schema.org的name
。 )
现在,您可以添加仅适用于其父级(Series
/ Season
)的其他属性,而不是TVEpisode
:
<span itemprop="partOfSeries" itemscope itemtype="http://schema.org/Series">
<span itemprop="name">Pokemon</span>
<link itemprop="sameAs" href="http://en.wikipedia.org/wiki/Pok%C3%A9mon_%28anime%29"/>
</span>
<span itemprop="partOfSeason" itemscope itemtype="http://schema.org/Season">
<span itemprop="name">Orange Islands</span>
<link itemprop="sameAs" href="http://en.wikipedia.org/wiki/List_of_Pok%C3%A9mon:_Adventures_on_the_Orange_Islands_episodes"/>
</span>
关于你的例子的附注:
https
协议的Schema.org网址。没错,但是I recommend to always use http
。h2
);您可以改为使用p
,并使用header
中的替代标题对标题进行分组(请参阅HTML5的Subheadings, subtitles, alternative titles and taglines)。