将元描述和开放图协议描述组合到一个标签中

Boo*_*tor 38 html tags header facebook-graph-api

是否可以组合元描述和开放图协议描述...

<meta name="description" content="My meta description copy." />
<meta property="og:description" content="My meta description copy." />
Run Code Online (Sandbox Code Playgroud)

...当它们包含相同的内容时成为一个?

<meta name="description" property="og:description" content="My meta description copy." />
Run Code Online (Sandbox Code Playgroud)

Nic*_*ick 50

是的,你可以将它们结合起来.为了测试它,我在下面创建了简单的HTML页面,将其上传到服务器,然后通过Facebook的URL Linter运行页面.它没有报告与描述标签相关的警告(仅涉及缺失的og:image标签)并正确阅读说明.

<!doctype html>
<html>
    <head>
        <meta name="description" property="og:description" content="My meta description copy." />
        <meta property="og:title" content="Test page" />
        <meta property="og:type" content="article" />
        <meta property="og:url" content="http://example.com/ogtest.html" />
    </head>
    <body>
    Test
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

请注意,如果该og:url值与当前页面网址不同,Facebook将查找该网址的描述而不是当前网址,并忽略当前网页的描述标记.

您可能还会感兴趣的是,即使可以将两个描述标签组合在一起,Facebook也不会在自己的网站上执行此操作.

  • 任何人都可以想到将两者结合起来的任何缺点吗? (5认同)

小智 8

关于为什么可能/允许的一些额外信息:

HTML + RDFa 1.1扩展了HTML5的meta元素.

HTML + RDFa 1.1(W3C推荐标准)定义:

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

因此,当使用RDFa的@property时,名称不是必需的,但它也不被禁止

<meta name="description" property="og:description" content="great description">
Run Code Online (Sandbox Code Playgroud)

根据规格完全没问题.

我从这个相关问题的答案中找到了这个:是否可以为opengraph和schema.org使用相同的元标记