【问题标题】:Is it possible to use the same meta tag for opengraph and schema.org是否可以对 opengraph 和 schema.org 使用相同的元标记
【发布时间】:2013-12-22 10:59:01
【问题描述】:

我不喜欢文档头部的标签数量。 这是一些元标记的示例。

<!--w3c-->    
<title>Page Title</title>
<meta name="description" content="great description">

<!--schema.org-->
<meta itemprop="name" content="Page Title">
<meta itemprop="description" content="great description">

<!-- opengraph-->
<meta property="og:title" content="Page Title">
<meta property="og:description" content="great description">

是否可以结合标签/属性来减少代码大小而不影响SEO? 例如
&lt;title itemprop="name"&gt;Page Title&lt;/title&gt;
itemprop 属性可以在任何地方使用,所以我很确定这很好 但据我所知, property="og:*" 属性必须与元标记一起使用。
那么下面的标记可以接受吗?

<meta name="description" itemprop="description" property="og:description" content="great description">


这将如何影响 SEO?

非常感谢

【问题讨论】:

  • 您问题的 SEO 部分对于 SO 来说是题外话,因为有 许多 搜索引擎,大多数时候他们没有记录他们如何准确地解释 HTML 文档,甚至这种未知的解释也可能每天都在变化。我认为最好编辑您的问题并删除 SEO 部分。

标签: html seo facebook-opengraph meta schema.org


【解决方案1】:

HTML+RDFa 1.1 和 Microdata extend HTML5 的 meta 元素。

HTML+RDFa 1.1 (W3C Recommendation) 定义:

如果 meta 元素上存在 RDFa @property 属性,则 @name@http-equiv@charset 属性都不是必需的,并且必须指定 @content 属性。

Microdata (W3C Note) 定义:

如果meta 元素具有itemprop 属性,则namehttp-equivcharset 属性必须省略,content 属性必须存在。

这意味着:

  • Microdata的itemprop属性不能和HTML5的name属性一起使用。

  • 允许使用 RDFa 的 property 属性和 HTML5 的 name 属性:

    <meta name="description" property="og:description" content="great description" />
    

    possibly an issuebody 中而不是head

  • 如果没有提供 HTML5 的 name 属性,似乎允许将 Microdata 的 itemprop 属性与 RDFa 的 property 属性一起使用:

    <meta itemprop="description" property="og:description" content="great description" />
    

    (但是W3C Nu Html Checker报错)

【讨论】:

  • 这意味着OP也可以做&lt;meta itemprop="description" property="og:description" content="great description"&gt;
  • "不允许将 itemprop 与 name 属性一起使用" -> 这很有趣,因为我们现在所在的网站就是这样做的 ;)
【解决方案2】:
<!DOCTYPE html>
<html vocab="http://www.w3.org/2011/rdfa-context/rdfa-1.1" lang="en" dir="ltr">
<head>

<!--w3c-->    
<title property="schema:name">Page Title</title>
<meta name="description" content="great description">

<!--schema.org-->
<meta property="schema:name" content="Page Title">
<meta property="schema:description" content="great description">

<!-- opengraph-->
<meta property="og:title" content="Page Title">
<meta property="og:description" content="great description">

<meta property="schema:description og:description" content="great description">

</head>
<body>
</body>
</html>

【讨论】:

  • 在这个例子中,最后一行是多余的,因为我之前已经在两个不同的行中定义了它。
【解决方案3】:

您使用多少元数据取决于您。至少有 5 个标准,其中一些像 Google+ 或 Pinterest 将退回到 OpenGraph。我认为任何搜索引擎都不会因为您遵循行业标准而惩罚您。如果您的网站销售产品并且您的产品列表页面每页包含许多产品,您可能希望使用 schema.org,所有主要的英语搜索引擎和 Yandex 都同意支持它。如果您的网站更侧重于内容,schema.org 的重要性就不那么重要了,但支持 OpenGraph 加 Twitter Cards 甚至 Rich Pins 可能更重要。

This is a good article 了解各种竞争标准以及使用哪些标准。许多人想要他们可以获得的所有流量,因此支持许多标准。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-04-21
    • 2021-10-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多