cos*_*phi 7 html microdata schema.org
在阅读了数千个帖子,问题,博客文章和意见之后,我仍然对如何使用微数据标记网页感到困惑.如果微数据的主要目的是帮助搜索引擎更好地理解网页的内容(并且隐含地假定网页),那么从body元素中的itemtype网页开始是否正确,然后继续标记其余的嵌套元素定义哪个是主要实体,或者最好从一个物理类型开始,理想情况下,该类型是网页的主要主题并在顶层关联属性,或者最好在顶层具有不同的项目类型(即网页) ,博客文章和页面的主题)?
一个例子将更好地解释我的问题:如果我必须标记包含关于特定主题的博客文章的网页(比如关于无线技术),那么顶级项目应该是什么?应该是网页,博客或无线技术?
当涉及结构化数据时,在典型情况下,指导原则应该是:越多越好。如果您提供更加结构化的数据(即,使事情变得明确而不是保持隐式),那么消费者找到可以利用的东西的机会就会更高。
\n\n不遵循本指南的原因可能包括:
\n\nWebPage提供什么因此,除非您有理由不这样做,否则如果您可以提供可能有趣的数据,那么提供WebPage类型\xe2\x80\x99可能是一个好主意。例如:
它允许您为页面和页面上的事物提供不同的 URI,或者页面代表的内容,例如人、建筑物等(了解为什么这很有用,以及带有详细信息的稍微更技术性的答案))。
hasPart允许您连接可能是顶级项目的项目,对于这些项目,\xe2\x80\x99 不一定清楚它们之间的关系。
isPartOf允许您将这部分设为WebPage其他内容(例如,如果您提供项目,则将其设为网站的一部分WebSite,或者将其设为 的一部分CollectionPage)。
您的页面上有面包屑:用于breadcrumb明确它们代表此页面的面包屑。
您提供辅助功能信息:使用accessibilityAPI, accessibilityControl, accessibilityFeature,accessibilityHazard
/ author/ contributor/ copyrightHolder/ editor/funder等。author该页面的/\xe2\x80\xa6与例如页面\xe2\x80\x99的主要内容的/\xe2\x80\xa6不同。
license该页面与页面中包含的某些部分不同。
您提供可以在页面上/通过页面完成的操作: use potentialAction。
\xe2\x80\xa6
当然它也允许您使用mainEntity,但如果这是您需要该物品的唯一用途WebPage,您也可以使用 inverse 属性mainEntityOfPage。
WebPage类型对于更具体的类型也是如此,它们给出了额外的信号:
\n\nAboutPage如果它\xe2\x80\x99是关于例如站点、您或您的组织的页面。CheckoutPage如果它\xe2\x80\x99是网上商店的结账页面。CollectionPage如果它\xe2\x80\x99是一个关于多个内容的页面(例如,列出博客文章、画廊、产品类别的分页页面,\xe2\x80\xa6)。ContactPage如果\xe2\x80\x99是联系页面。ItemPage如果它\xe2\x80\x99是关于单一事物(例如,博客文章、照片、\xe2\x80\xa6)。ProfilePage例如,用于用户配置文件。QAPage如果它\xe2\x80\x99s \xe2\x80\xa6 好吧,就是这个页面。SearchResultsPage用于搜索功能的结果页面。您的三个案例是:
\n\n<!-- A - only the topic -->\n<div itemscope itemtype="http://schema.org/Thing">\n <span itemprop="name">wireless technology</span>\n</div>\nRun Code Online (Sandbox Code Playgroud)\n\n<!-- B - the blog post + the topic -->\n<div itemscope itemtype="http://schema.org/BlogPosting">\n <div itemprop="about" itemscope itemtype="http://schema.org/Thing">\n <span itemprop="name">wireless technology</span>\n </div>\n</div>\nRun Code Online (Sandbox Code Playgroud)\n\n<!-- C - the web page + the blog post + the topic -->\n<div itemscope itemtype="http://schema.org/ItemPage">\n <div itemprop="mainEntity" itemscope itemtype="http://schema.org/BlogPosting">\n <div itemprop="about" itemscope itemtype="http://schema.org/Thing">\n <span itemprop="name">wireless technology</span>\n </div>\n </div>\n</div>\nRun Code Online (Sandbox Code Playgroud)\n\nA传达:有一种东西的名字叫“无线技术”。
\nB 传达:有一篇关于“无线技术”的博文。
\nC 传达:有一个网页包含一篇博客文章(作为该页面的主要内容)关于。
虽然我\xe2\x80\x99t 不建议使用 A,但使用 B 完全没问题,并且可能足以满足大多数用例。虽然 C 已经提供了比 B 更多的详细信息(即该页面是针对单个事物的,并且该事物是博客文章,而不是页面上可能存在的其他项目),但它\xe2\x80\x99s 可能对于这样一个简单的情况不需要。但是,一旦您可以提供更多数据,这种情况就会改变,在这种情况下, I\xe2\x80\x99d 会选择 C。
\n