我的网站上有一个Facebook API生成的Feed,显示我在Facebook上发布的最新帖子。在这种情况下,这是我写的关于劳伦图岛的一篇文章。当我访问我的Facebook页面时,图像如下所示:
但是当我访问我的网站时,图像看起来像这样:
似乎Facebook正在裁剪我的形象,但我不知道如何防止它。这是我使用的代码:
$feed = 'Feed Id';
$a_token = 'Secret Access Token';
$maximum = 1;
$url = "https://graph.facebook.com/v2.9/{$feed}/feed?access_token={$a_token}&limit={$maximum}";
$response = file_get_contents($url);
$facebookString = $response;
$facebookArray = json_decode($facebookString);
$array = array();
foreach ( $facebookArray->data as $each ) {
$each->message = preg_replace("/(https?:\/\/.*) ?$/", "<a target='_blank' href='$1'>$1</a>", $each->message);
$row = array();
$response = file_get_contents("https://graph.facebook.com/v2.9/{$each->id}/attachments?access_token={$a_token}");
$image = json_decode($response);
$src = $image->data[0]->media->image->src;
if ($src == '') {
$src = $image->data[0]->subattachments->data[0]->media->image->src;
}
$row['post'] = $each->message;
$row['image'] = $src;
$row['time'] = strtotime($each->created_time);
$array[] = $row;
}
$string = "";
foreach ($array as $entry) {
$string .= "<div class='post'>";
if ($entry['image'] != '') {
$string .= "<img src='{$entry['image']}'>";
}
$string .= "<p>" . $entry['post'] . "</p>";
$string .= "</div>";
}
echo $string;
我的问题有很多similar posts,但我不确定这是同一个问题(在提出请求时没有询问图片)还是另一个问题。< / p>
如果Facebook一直停止更改API,那就太棒了!
任何帮助都会受到赞赏。
谢谢。