我的网站上有一个图片缓存,我需要每天4-5次将这些照片上传到我的Facebook粉丝页面。我的代码会创建一个相册并将照片上传到相册,但这些照片不会显示在时间轴中。
所以我的问题是,如何将照片上传到我的粉丝页面,以便它们出现在时间轴上,在墙上。正在使用的语言是PHP
非常感谢任何帮助。
由于
编辑1: 这是代码:
<?php
require 'facebook.php';
$facebook = new Facebook(array(
'appId' => "AAAAAAAAAA",
'secret' => "BBBBBBBBBB",
));
$fanpage_token = "ZZZZZZZZZZZZZZZZZZZZZZZZZZ";
$facebook->setFileUploadSupport(true);
//Create an album
$album_details = array(
'message'=> 'test album',
'name'=> 'album'
);
$create_album = $facebook->api('/PAGE_ID/albums', 'post', $album_details);
$album_uid = $create_album['id'];
echo $album_uid;
$img = '7newx.jpg';
$args = array(
'message' => 'Random message',
'image' => '@' . $img,
'aid' => $album_uid,
'no_story' => 1,
'access_token' => $fanpage_token
);
$photo = $facebook->api($album_uid . '/photos', 'post', $args);
?>
答案 0 :(得分:5)
好的,所以我猜您尝试删除no_story,发现它不会影响时间轴。这也是我发现的。
你要做的就是发一篇文章,但这一次,作为一个链接。你需要使用你的第一篇文章中返回的数组$ photo。如果您检查到它应该看到它有一个名为['id']的元素,其中包含您上传的照片的ID。
您需要将其转换为Facebook用于显示的链接。这很简单。
if (isset($photo['id']))
{
$message = "My latest photo";
$link = "https://www.facebook.com/photo.php?fbid=".$photo['id'];
$attachment = array
(
'access_token'=>$fanPageAccessToken,
'type' => 'photo',
'message' => $message,
'link' => $link
);
$result = $facebook->api($fanPageId.'/links/','post',$attachment);
}
我假设您可以找出$ fanPageAccessToken和$ fanPageId的内容。
如果你这样做,你应该得到你想要的东西。