如何更新facebook打开图形图像

时间:2013-03-27 22:55:44

标签: facebook opengraph open-graph-protocol

假设您是否通过开放图形协议的元标记为您的网页设置了facebook图像,如下所示:     <meta property="og:image" content="http://ia.media-imdb.com/rock.jpg"/>

如果您想用另一张同名rock.jpg的图片替换/更新图片,那么当您共享页面时,如何让Facebook使用新图像相应地更新图片?强制Facebook使用此链接http://developers.facebook.com/tools/debug获取您网页的数据不会更新图片。

4 个答案:

答案 0 :(得分:57)

这是我在这个问题上找到的最一致的答案:https://stackoverflow.com/a/21468084/339698

如果你懒得去那个链接,你可以POST使用你想要清除的网址的ajax请求:

$.post(
    'https://graph.facebook.com',
    {
        id: 'http://www.site.com/my/share/url/',
        scrape: true
    },
    function(response){
        console.log(response);
    }
);

答案 1 :(得分:40)

Facebook将您的图像存储在其服务器上的自己的图像中,然后将其缓存24小时。缓存延迟可能在将来发生变化,因此要检查它只是打开Facebook从您的图像创建的图像并检查其http头中的“max-age”值。因此,如果您更改图像,即使您使用此链接http://developers.facebook.com/tools/debug强制数据获取,Facebook也不会在24小时之前更新其版本。

要解决此问题,如果您需要立即查看更改的效果,则应重命名图像。因此,如果旧版本rock.jpg将其命名为rock2.jpg,请使用此链接http://developers.facebook.com/tools/debug让Facebook根据您更新的图片创建新图片。这将立即在facebook分享中更新您网页的脸书图片。

答案 2 :(得分:2)

发表此文章的几年后,这仍然是一个问题,但它不是Facebook的缓存:它经常是人为错误(请允许我详细说明)

OG:TYPE会影响您的图像抓取:

  1. https://ogp.me/#type_article https://ogp.me/#type_website
  2. 不同

请注意og:type = website将导致该URL的任何/ sub-pages /变为“规范”。这意味着无论您做什么,都将难以使用刮板更新图像。

考虑此“假设和常见错误”

-<meta property="og:type" content="website" /> => https://www.example.org(父)
 -<meta property="og:type" content="website" /> => https://www.example.org/sub-page/
 -<meta property="og:type" content="website" /> => https://www.example.org/sub-page/child-2/
 -Ergo:/sub-page//child-2/将继承父级的og:image

那些不是“所有网站”,1是一个网站,其他是文章。

如果您这样做,Facebook会认为所有这些都是规范的,并将FIRST og:image纳入所有这些内容。 (尝试一下,您会看到)-如果将og:url设置为您的根域或父域,您已经告诉facebook它们都是规范的。 (有充分的理由,但这是题外话)

考虑此解决方案(这是大多数人“真正想要的”东西)

-<meta property="og:type" content="article" /> => https://www.example.org/sub-page/
 -<meta property="og:type" content="article" /> => https://www.example.org/sub-page/child-2/

如果您现在这样做,Facebook在刮取新图像方面将为您带来的麻烦要少得多。

最后,是,缓存破坏器,随机变量,更改URL和建议在这里可以使用,但是如果未正确指定og:type,它们看起来像“间歇伏都教徒”

PS:请记住,即使您“认为”可以看到最新版本,CDN或服务器端缓存也将服务于Facebook的抓取工具。 (除了指出这一点,如果不仔细检查,这将浪费您大量的时间。)

答案 3 :(得分:1)

如果您使用任何缓存插件,请确保清除所有缓存。另外,请确保您使用的图像具有推荐的脸谱尺寸:1200(宽)x 630(高)或600 x 315.