当使用PHP将图像发布到Facebook墙时,仅显示缩略图


When posting image using PHP to Facebook wall only thumbnail is displayed

当使用PHP以管理员身份将图片发布到我的FB页面时,它显示为缩略图。我想把它显示为全尺寸图片

我正在使用的代码:

$page_info = $facebook->api("/$page_id?fields=access_token");
$page_access_token = $page_info['access_token'];
$data['picture'] = "image.jpg";
$data['link'] = "link";
$data['message'] = "message";
$data['access_token'] = $page_access_token;
$post_url = 'https://graph.facebook.com/'.$page_id.'/feed';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $post_url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$return = curl_exec($ch);
curl_close($ch);

有什么帮助吗?

这是我希望它的显示方式 - https://i.stack.imgur.com/0PUOS.png

谢谢


谢谢你的回答,

我尝试删除链接,但它不起作用。我搜索了更多并尝试了以下代码,但它给了我错误>>>

警告: curl_setopt_array() [function.curl-setopt-array]: open_basedir限制生效。文件() 不在允许的范围内 路径: (/data/web/virtuals/17535/virtual) in /data/web/virtuals/17535/virtual/www/apps/fb/src/base_facebook.php on 第 963 行 致命错误:未捕获的卷曲异常:3:未设置 URL!扔进去 /data/web/virtuals/17535/virtual/www/apps/fb/src/base_facebook.php on 994路

require 'facebook.php';
$facebook = new Facebook(array(
'appId'  => '111111111111',
'secret' => '222222222222222222',
   'fileUpload' => true
));
$page_id = '3333333333333';
$page_info = $facebook->api("/$page_id?fields=access_token");
$page_access_token = $page_info['access_token'];     
$image = "http://www.emperola.com/upload-01/18001-img_hero.jpg";
$args = array(
        'access_token'  => $page_access_token,
        'message'       => 'message',
        'name'          => 'Title',
        'picture'       => $image
    );
    $post_id = $facebook->api("/$page_id/feed","post",$args);

谢谢你的帮助

谢谢大家的帮助,

以下代码按预期对我有用:

$page_info = $facebook->api("/$page_id?fields=access_token");
$page_access_token = $page_info['access_token'];      
$image = "../$upload/$picture";
$args = array(  
    'message' => ''.$nazev.' - '.$link.'',  
    'access_token' => $page_access_token,  
    'image' => '@' . realpath($image)
);  
$data = $facebook->api('/'.$page_id.'/photos', 'post', $args);

目前,你告诉Facebook你的帖子是一个链接。您需要修改它,使其不是一个链接,而更像是一个"状态更新"。尝试从对 Facebook 的 API 调用中删除"link"属性,并将 URL 添加到消息中。如果这不起作用,正如@CRroe评论中所说,您需要使用 API 将图像上传到 Facebook,然后在页面/用户时间线上分享该照片。