facebook无法识别我的元标记

时间:2011-05-24 11:53:06

标签: facebook opengraph

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
   <html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:og="http://ogp.me/ns#"
      xmlns:fb="http://www.facebook.com/2008/fbml">
      <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <meta http-equiv="Content-Language" content="en" />
        <title></title>
            <meta property="og:title" content="Katha Screenplay Darsakatvam (KSD) Appalaraju "/>
        <meta property="og:type" content="movie"/>
        <meta property="og:url" content="http://reviewumpire.com/movies/54-katha-screenplay-darsakatvam-ksd-appalaraju-"/>

        <meta property="og:image" content="http://reviewumpire.com/images/uploads/movie/vertical/54/vert.jpg"/>
        <meta property="og:site_name" content="ReviewUmpire"/>
        <meta property="fb:app_id" content="162180660488445" />
        <meta property="fb:admins" content="57728908711" />
        <meta property="og:description" content="23% scored on reveiwumpire."/>

        <meta name="google-site-verification" content="RXjWilEYk0eC_6ulYSV_AaFVSQe8nHI6Zw4_W9dVR5I" />
        <script src="/javascripts/vendor/jquery.min.js?1306239220" type="text/javascript"></script>
    <script src="/javascripts/vendor/quote.rotator.js?1306239220" type="text/javascript"></script>

    <script src="/javascripts/vendor/scroll.js?1306239220" type="text/javascript"></script>
    <script src="/javascripts/vendor/rails.js?1306239220" type="text/javascript"></script>
    <script src="/javascripts/application.js?1306239220" type="text/javascript"></script>
        <link href="/stylesheets/compiled/grid.css?1306239220" media="screen" rel="stylesheet" type="text/css" />
    <link href="/stylesheets/compiled/text.css?1306239220" media="screen" rel="stylesheet" type="text/css" />
        <link href="http://fonts.googleapis.com/css?family=Play:regular,bold&amp;subset=greek,latin" media="screen" rel="stylesheet" type="text/css" />
        <link href="http://fonts.googleapis.com/css?family=Ubuntu:regular,bold&amp;subset=greek,latin" media="screen" rel="stylesheet" type="text/css" />
        <meta name="csrf-param" content="authenticity_token"/>
    <meta name="csrf-token" content="ZrmCr3Qg7dNgPynFSSyFEHNaSpOUMYNEput1oUcyMIE="/>
      </head>

当我使用facebook lint时 http://developers.facebook.com/tools/lint 它没有检测到我的任何facebook标签

Warning
Required Property Missing   og:title is required
Required Property Missing   og:type is required
Required Property Missing   og:image is required
Required Property Missing   og:url is required

10 个答案:

答案 0 :(得分:6)

您在og:url元标记中指定的网址包含无效的fb:admin。请使用有效的管理员ID进行更新,然后重试。

请参阅Facebook Debugger Tool

上的Lint信息
  

“网站”类型的URL“http://reviewumpire.com/movies/54-katha-screenplay-darsakatvam-ksd-appalaraju-”处的对象无效,因为属性“fb:admins”的给定值“57728908711”无法解析为“fbid”类型。管理员无效 - &gt; fb:admins字段包含一些无效的ID,即57728908711

答案 1 :(得分:5)

我遇到了同样的问题,我发现Facebook识别

AddMetaData("og:url", "yourURL")

然后转到yourURL以获取其他标记信息,例如og:title ...等

答案 2 :(得分:2)

您缺少命名空间定义 xmlns:fb="http://www.facebook.com/2008/fbml" xmlns:og="http://opengraphprotocol.org/schema/"

编辑: <html xmlns:fb="http://www.facebook.com/2008/fbml" xmlns:og="http://opengraphprotocol.org/schema/" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="ltr">

答案 3 :(得分:2)

我知道这是一个老问题,但我找不到我找到的答案 - 只需在facebook元代码的末尾删除斜杠(/)。

如果您没有使用正确的DOCTYPE,那么Facebook会创建错误的代码:

<meta property="og:title" content="Katha Screenplay Darsakatvam (KSD) Appalaraju "/>

是的:

<meta property="og:title" content="Katha Screenplay Darsakatvam (KSD) Appalaraju ">

答案 4 :(得分:1)

我检查了我的代码并发现我在标签之前输出了一些数据。这导致facebook解析器搞砸了,一旦我从那些标签中移除了html,它就可以正常工作了。

答案 5 :(得分:0)

检查服务器为该页面发送的HTTP响应标头。

如果缺少Content-Length字段,那么这就是您的问题。根据我的经验,如果该字段丢失,Facebook将不会解析您的页面。

答案 6 :(得分:0)

对我来说,这是因为我有一个302重定向来到达带有OG元标记的实际页面。我的猜测是Facebook爬虫不会遵循重定向,因此您必须确保在第一次请求时返回200。

答案 7 :(得分:0)

如果例如,元标记中的编码双引号也可能是错误的。您已将代码从浏览器复制到编辑器中。

我通过使用linter在我的网页标记中发现了大量的错误 https://developers.facebook.com/tools/debug/

下面是一个功能:“查看我们的刮刀对您的网址的确切内容”,这非常有用。

答案 8 :(得分:0)

尝试删除

<meta property="fb:app_id" content="162180660488445" />
<meta property="fb:admins" content="57728908711" />

并使用此功能测试您的网址和错误信息

  

http://developers.facebook.com/tools/debug

答案 9 :(得分:0)

我们注意到,facebook抓取工具愿意遵循og:image url中的重定向,但facebook客户端却没有。举个例子。

尝试将以下链接发布到Facebook。如果facebook之前看过网址,他们的抓取工具就会正确缓存图片。如果没有,它就不会。要模拟此行为,请将随机字符串放入下面url的ref参数中。

http://www.blipboard.com/4fac51e571272e0100000015?ref=1

如果您尝试发布此网址(插入随机ID),则无法在第一次显示正确的图像。如果你然后重新加载Facebook页面并尝试再次发布,这次它将工作。

元标记如下(需要重定向):

<meta property="og:image" content="http://graph.facebook.com/1000484548/picture?type=large" />

我对此的最佳解释是,facebook客户端代码不遵循重定向,但抓取工具(调试器也是如此)