Schema.org<;头>;HTML标记:我可以只使用元标记吗?
所以我在看Schema.org。是否需要将我的Schema.org<;头>;HTML标记:我可以只使用元标记吗?,html,schema.org,microdata,Html,Schema.org,Microdata,所以我在看Schema.org。是否需要将我的标记更改为此 或者我可以只使用块中的元标记吗 关于on的部分没有明确提到HTML文档的head-元素中的meta-元素。总之,您需要itemscope才能拥有有效的标记 如果您查看网站上的描述,您会发现关于网页的这一部分: 每个网页都隐式地假定声明为WebPage类型,因此可以使用关于该网页的各种属性,例如breadcrumb。如果指定了这些属性,我们建议显式声明,但如果在itemscope之外找到它们,则假定它们与页面有关 有趣的是: […]
标记更改为此
或者我可以只使用
块中的元标记吗
关于on的部分没有明确提到HTML文档的head
-元素中的meta
-元素。总之,您需要itemscope
才能拥有有效的标记
如果您查看网站上的描述,您会发现关于网页的这一部分:
每个网页都隐式地假定声明为WebPage类型,因此可以使用关于该网页的各种属性,例如breadcrumb。如果指定了这些属性,我们建议显式声明,但如果在itemscope之外找到它们,则假定它们与页面有关
有趣的是:
[…]如果它们[属性]是在itemscope
之外找到的,将假定它们与页面有关。
根据这一点,您不需要将itemscope
添加到html
-元素。但它读起来更像是一个建议,而不是一个明确的规范
你也可以在谷歌的网站上看到这种行为。运行此代码时:
<!DOCTYPE html>
<html lang="en">
<head>
<meta itemprop="name" content="The Name or Title Here">
<meta itemprop="description" content="This is the page description">
<meta itemprop="image" content="http://www.example.com/image.jpg">
</head>
</html>
…您会发现它不会捕获任何数据。当您添加itemscope
导致未指定类型且无任何错误时,它将立即开始捕获数据:
使用itemtype=”http://schema.org/Article“
将失败或至少抛出错误,因为为类型文章
提供的属性太少
所有不同的类型都可以在scheme.org上找到。也许其中一个适合整个页面。根据中给出的示例,是的,这两个都是谷歌的必修课 要验证数据是否被正确捕获,可以使用此工具:
通过使用上面的工具,您可以看到如果省略
itemtype=”http://schema.org/Article“
数据将不会被捕获。属性需要属于某个项目。您可以使用itemscope
属性创建一个项目(而itemtype
属性可以为该项目指定一个类型)
如果没有itemscope
,则标记示例无效
可以仅在头部
元素内提供微数据,但不推荐使用,原因有二:
- 微数据旨在用于现有标记。虽然在
()中包含某些标题
/元
元素通常是有意义的,但大多数内容通常在链接
中。如果您只想使用正文
,则必须复制大部分内容。但如果你想走那条路,你就得走标题中的元素
- 由于
不允许使用分组元素(如head
),因此表示微数据变得复杂。您必须对每个属性使用div
,并对每个项目滥用itemref
之类的元素(参见示例)style
如果您可以在head
元素上使用itemscope
,则更好:
但是,一旦您需要不止一个项目(通常情况下,对于组织
/个人
,即作者
等),这就不再有效,您需要一个类似于我的第一个代码片段的解决方案
注意,允许对主体
元素中的微数据使用元
/链接
元素。这使它更容易,因为您可以为itemscope
使用div
元素。因此,即使复制内容而不是标记现有内容,也最好在正文中执行此操作:
(我将image
属性的meta
元素替换为link
元素,因为。)您可以安全地使用
。这允许您在
元素中定义itemprop
Google富测试代码段和w3验证程序,两者都验证了这种方法,因为我已经对它进行了测试。越简单、越有效越好:)我认为网站修改标签并不容易,因为在文章、博客、网站视频等之间切换是为什么很多网站不使用它的原因,我想还是坚持使用opengraph。@c0nk即使是你真正需要的opengraph
,但我认为大多数解析器并不需要它。请参阅。您说过如果只有itemscope存在未定义的类型,则为。
您能否给出一个未定义类型的示例,该类型可用于所有类型,如文章、视频、图像、博客等。@C0nw0nk我已用更多信息更新了答案,关于你的问题。谢谢你提供的信息:)是否有一个通用模式属性,我可以应用于网站、文章、视频和图像。如果我能应用一个适用于所有人的函数,那么上面的itemtype仅适用于文章。最常见的是,如果可能的话,尽量缩小范围。:)还要注意的是,模式微数据正在变得过时,因为它的实现非常混乱,因为它会干扰html。谷歌建议我们改用JSON-LD。这对我来说要干净得多implement@insertusernamehere:Schema.org和Microdata是不同的事物和项目,因此无论Schema.org写什么,它都不会影响什么是/不是有效的Microdata。(顺便说一句,它在RDFa中是有效的。)——Schema.org关于网页
的声明对数据消费者来说是有意义的(他们必须处理无效数据),但在我看来,作者不应该含蓄地使用网页
;我