为stream.publish寻找图片附件php API feed

时间:2011-09-14 08:04:24

标签: php facebook

我正在拼命寻找我的脸书应用程序的图片附件php api feed。

基本上我要做的是发送图像附件,以及自动“发布到朋友墙”动作。

背后的想法是,用户向他们的朋友墙发送“虚拟汉堡”,并向他们发送折扣信息。

这是成功发送邮件的代码片段,但我无法使附件生效。

if($_REQUEST['friend_1']!='' && $_REQUEST['friend_1']!="Start typing a friend's name") {
    try {
        $fql1    =   "select name from user where uid=" . $_REQUEST['friend_1'];
        $param1  =   array(
            'method'    => 'fql.query',
            'query'     => $fql1,
            'callback'  => ''
        );
        $fqlResult1   =   $facebook->api($param1);
        $friend_1_name = $fqlResult1[0]['name'];
        $statusUpdate = $facebook->api('/'.$_REQUEST['friend_1'].'/feed', 'post', array('link' => $fanpageURL, 'name' => 'Have a virtual Unity Burger.', 'description' => " ".$user_name." just sent you a virtual Unity Burger. If you would rather have the real thing then come add your name on the Unity list and we will give you a 20% discount on your next visit and an exclusive Unity keyring.", 'properties' => '', 'cb' => ''));
    } catch (FacebookApiException $e) {
        //echo "Notification not send to user ".$fqlResult1[0]['name']."<br>";

1 个答案:

答案 0 :(得分:0)

我认为有两种方法可以将图像附加到墙贴上。

第一个是在目标页面中定义元og:image并将链接发布到朋友墙。 Facebook将查询目标并获取在墙上显示它的Open Graph信息。您可以使用Facebook Debugger进行测试。

元属性应如下所示:

<meta property="og:image" content="http://url.to/image" />

您还可以定义其他Open Graph属性,如标题,描述等。

将图像附加到帖子的第二种方法是在Graph API调用中包含picture参数。在您的代码中,您只定义了一些参数(链接,名称,描述......),但您也可以发送图片,标题,消息......

所以你的API调用可能是这样的:

$params = array(    'access_token' => '',
                    'message'   =>  '',
                    'link'      =>  '',
                    'picture'   =>  '',
                    'name'      =>  '',
                    'caption'   =>  '',
                    'description'   =>  ''
);

$wallPost = $facebook->api('/'.$to.'/feed', 'post', $params);