Facebook忽略og:图像共享网站链接

时间:2013-09-18 12:42:21

标签: php facebook facebook-graph-api opengraph facebook-opengraph

我最近注意到facebook已经开始忽略我网站上的og:image标签了。使用的图像总是大于200x200。

以下是一个示例页面:

<德尔> http://bit.ly/15CrOhS

http://bit.ly/1b8Mgbe

似乎有很多问题,但没有答案。我已经添加了所有的og信息并用linter进行了检查,这一切都很顺利。那么为什么选择随机图像?

我使用facebook api for PHP发送:

<?php

$link = 'http://www.mylinkaddress.com';
$msg = 'Check out my new photo. '.$link;

$get_oauth = "SELECT * FROM users_oauth_cred WHERE userid = ".$_SESSION['userid']." AND share = 1 AND oauth_access_token != ''";
$get_oauth = mysql_query_run($get_oauth);
$oauth = mysql_fetch_array($get_oauth);

# FACEBOOK
$facebook = new Facebook(array(
    'appId'  => FACEBOOKAPPID,
    'secret' => FACEBOOKSECRET,
    'cookie' => false,
));
$token = $oauth['oauth_access_token'];

try {
    $result = $facebook->api(
            '/me/feed/',
            'post',
            array('access_token' => $token, 'message' => str_replace($link,'',$msg), 'link' => $link)
    );

}
catch(FacebookApiException $e) {}

?>

5 个答案:

答案 0 :(得分:5)

我有同样的问题。

转到Facebook对象调试器,验证每个问题指向那里,解决所有问题。这解决了我的问题。

http://goo.gl/ASBsAa

答案 1 :(得分:2)

使用facebook Graph API Explorer测试您的查询对我来说很好。 您可以尝试将附加参数“图片”添加到帖子中,并将链接放入图片中。

所以facebook被迫在帖子中使用它作为图像。

$result = $facebook->api(
            '/me/feed/',
            'post',
            array('access_token' => $token, 'message' => str_replace($link,'',$msg), 'link' => $link, 'picture' => 'http://images.ephotozine.com/gallery/2011/49/normal/52194_1323334048.jpg')
    );

答案 2 :(得分:1)

阅读这里的所有评论,我认为发生的事情如下。 让我知道我有多接近。这是在黑暗中拍摄的。 ;)

第一次与Facebook共享网址时,og:图像设置不完美,Facebook在页面上选择了一个随机图像,并将其缓存。

然后你修复了og:image标签,并尝试检查相同的URL ..然后FB反过来缓冲了缓存的图像。

我刚试过你的两个链接,一切都很好。

:{d

答案 3 :(得分:0)

请耐心等待。 Facebook需要一些时间来抓取这张图片。它不会立即出现在Facebook上。如果您的图片在某些日子里没有显示,请在此处留言。

答案 4 :(得分:0)

许多测试和尝试其他批量上传者等。最后只是决定给Facebook发送电子邮件详情和screnshot。第二天问题已经解决。因此,请务必通过您的Facebook帐户从帮助电子邮件中尝试。为我工作。