在阅读了上千篇文章、问题、博客文章和观点之后,我仍然对如何用微数据标记网页感到有点困惑。如果微数据的主要目的是帮助搜索引擎更好地理解网页的内容(并且假定网页是隐式的),那么从body元素中的itemtype网页开始,然后继续标记定义主要实体的嵌套元素的其余部分,还是最好从理想上是网页主主题的项目类型开始,并在顶层关联属性,还是最好在顶层有不同的项目类型(即网页、博客文章和页面的主要主题)?
一个例子将更好地解释我的问题:如果我必须标记一个包含关于某个特定主题的博客文章的网页(比如无线技术),那么在顶层应该是什么项目呢?应该是网页,博客,还是无线技术?
发布于 2016-11-16 15:40:23
越多越好(例外)
当涉及到结构化数据时,在典型的情况下,指南应该是:越多,越好。如果您提供了更结构化的数据(即,您将事物显式化,而不是将其保持为隐式),那么消费者找到它可以使用的东西的可能性就会更高。
不遵守这一准则的理由可能包括:
WebPage提供了什么
所以除非你有理由不这么做,否则提供 type…可能是个好主意如果你能提供可能有趣的数据。例如:
hasPart允许您连接否则可能是顶级项的项,对于这些项来说,不一定清楚它们是什么关系。isPartOf允许您将此WebPage作为其他内容的一部分(例如,如果您提供WebSite项,或者是CollectionPage)。breadcrumb明确表示此页面的面包屑。accessibilityAPI、accessibilityControl、accessibilityFeature、accessibilityHazardauthor/contributor/copyrightHolder/editor/funder/etc.与author/…不同。例如页面的主要内容。license与页面中包含的某些部分不同。potentialAction。当然,它还允许您使用mainEntity,但是如果这是您唯一需要WebPage项的东西,您也可以使用逆属性mainEntityOfPage。
更具体的WebPage类型
更具体的类型也是如此,它们提供额外的信号:
AboutPage --如果它是一个关于网站、你或你的组织的页面。CheckoutPage如果是网上商店的结账页面。CollectionPage如果它是一个关于多种事物的页面(例如,列出博客文章的分页页面、画廊、产品类别、…)。ContactPage。ItemPage如果它是关于一件事情(例如,博客帖子,一张照片,…)。ProfilePage,例如用于用户配置文件。QAPage如果是…就这一页。SearchResultsPage用于搜索函数的结果页。你的例子
你的三个案件是:
<!-- A - only the topic -->
<div itemscope itemtype="http://schema.org/Thing">
<span itemprop="name">wireless technology</span>
</div><!-- B - the blog post + the topic -->
<div itemscope itemtype="http://schema.org/BlogPosting">
<div itemprop="about" itemscope itemtype="http://schema.org/Thing">
<span itemprop="name">wireless technology</span>
</div>
</div><!-- C - the web page + the blog post + the topic -->
<div itemscope itemtype="http://schema.org/ItemPage">
<div itemprop="mainEntity" itemscope itemtype="http://schema.org/BlogPosting">
<div itemprop="about" itemscope itemtype="http://schema.org/Thing">
<span itemprop="name">wireless technology</span>
</div>
</div>
</div>传达:有一个名为“无线技术”的东西。
B传达:有一个博客关于的“无线技术”。
C传达:有一个网页,包含一个博客文章(作为该页面的主要内容)关于“无线技术”的。
虽然我不建议使用A,但是使用B是非常好的,而且对大多数用例来说可能已经足够了。虽然C已经提供了比B更多的细节(即页面是为一件事情而写的,并且这个东西是博客文章,而不是页面上的其他项目),但对于这样一个简单的例子来说,它可能并不需要。但是只要你能提供更多的数据,这种情况就会改变,在这种情况下,我会选择C。
https://stackoverflow.com/questions/40633571
复制相似问题