0

一点背景信息是,我和我的团队为房地产代理开发了一个网站,我被分配了将当前选定房产的图像设置为 facebook 共享功能的任务。

该属性的网页是动态的,因为有几个列表,所以我所做的是选择页面上加载的第一个图像并将其设置为og:image元标记。

现在假设我复制 URL 并将其发布到 Facebook,它会显示正确的缩略图,但是,它还会显示来自其他列表的多个缩略图。

网站上的所有图像都超过 200 x 200 像素,并且在 3:1 的纵横比内。

我的问题是,我如何告诉 Facebook 只拍摄我的初始图像,而不是抓住其他人。是否有我可以应用的 SelectSingleImage 属性?

我已经花了比我想要的更多的时间来寻找这个问题的答案,所以感谢您提供的任何帮助,非常感谢。

4

2 回答 2

0

似乎 Facebook 出于某种奇怪的原因将这些图像保存在缓存中,但要解决这个问题,我所要做的就是将 URL 输入 Facebook 的Linter工具,该工具又会清除其服务器上的缓存。

于 2013-04-09T14:34:01.967 回答
0

我有时使用的一种方法是识别 Facebook 的服务器并简单地为其提供不同的数据。这样,您实际上只能在页面上拥有一张图片(据 Facebook 所知)。

一无所知,但这里有一个简单的 PHP 代码示例。它所做的只是在请求的用户代理上执行正则表达式以将其与字符串匹配"facebook"

$isFacebook = false;
if(preg_match("/facebook/",strtolower($_SERVER["HTTP_USER_AGENT"]))) {
  $isFacebook = true;
}

Facebook 很可能有朝一日会改变他们的用户代理签名,但就目前而言,我很确定你会很安全,但要与开发者博客路线图保持同步。

于 2013-03-26T14:18:39.433 回答