无法解决Facebook Open Graph Meta标签没有被我的Wordpress网站刮掉

时间:2012-05-26 22:00:14

标签: facebook wordpress internet-explorer debugging opengraph

这是我第一次在这个网站上发帖提问,但肯定不是第一次在网站上找到答案。

我已经使用stackoverflow作为资源来解决我在新博客上遇到的几个问题,直到昨晚,当我发现这个问题时,我无法修复。

当我尝试分享我博客的主页时,我没有在og:image标签中指定正确的图像...一旦我通过de FB调试器检查我的网站,它就会显示我:

https://developers.facebook.com/tools/debug/og/object?q=ivanfuentes.com

奇怪的是,当我检查页面或帖子时,我没有发现任何问题: https://developers.facebook.com/tools/debug/og/object?q=ivanfuentes.com%2Fvideos%2F https://developers.facebook.com/tools/debug/og/object?q=http%3A%2F%2Fivanfuentes.com%2Fthe-popularity-contest%2F

所以,我知道这是仅在主页中生成的问题,但在过去的18个小时内,一直无法找到它。

我有通过wordpress插件指定的OG元标记...目前,它是“Facebook AWD”,但我还有其他几个Facebook分享,一体机和OG插件,这给了我同样的导致调试器,这让我觉得我搞砸了别的地方。承认我是一个新手,我没有尴尬,因此我很可能在尝试修改某些代码时搞砸了......可能是因为我添加了几行以使网站符合IE标准?

希望我提供了足够的信息,并且有人帮助我,因为这不仅仅是关于Facebook链接上显示的正确图像,而是关于我可能在我的代码中弄得一团糟,而且可能(WILL)一旦我将来对我的网站进行任何mod /更新,那就意味着麻烦。

感谢您的时间!

1 个答案:

答案 0 :(得分:2)

你的html是一个完整的混乱,这就是调试器抱怨的原因。

访问您的页面并查看代码我可以看到:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<div id="fb-root"></div>
<script>
...
</script>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xmlns:og="http://ogp.me/ns#" xmlns:fb="https://www.facebook.com/2008/fbml">
<head profile="http://gmpg.org/xfn/11">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<div id="fb-root"></div>
<script>
...
</script>
<title>Ivan Fuentes Hagar</title>

那里有两个问题:

  1. sdk代码插入两次
  2. 在这两种情况下,身体前都有一个div位置
  3. 在单击底部链接( Scraped URL: See exactly what our scraper sees for your URL)时此页面的调试器结果中,您还可以看到损坏的html,但在另一个版本中:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><body>
    <div id="fb-root"></div>
    <script>
    ...
    </script><meta http-equiv="content-type" content="text/html; charset=utf-8">
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <script>
    ...
    </script><title>Ivan Fuentes Hagar</title>
    

    这里有问题:

    1. 正文定义就在html
    2. 之后
    3. 没有头部定义
    4. 假设住在头部内的所有标签都在体内
    5. sdk脚本已加载两次
    6. 在这两种情况下,我发现了3次<div id="fb-root"></div>

      正如你所看到的,你有一些修复与你的wordpress的html输出有关 我不确定为什么调试器的输出不同,我认为可能是由于用户代理字符串,但尝试curl --user-agent "facebookexternalhit/1.1 (+http://www.facebook.com/externalhit_uatext.php)" "http://ivanfuentes.com/"会返回与浏览器一样的确切结果。