如何在Facebook中添加分享动作到帖子?

时间:2011-09-21 20:49:57

标签: php facebook facebook-graph-api

我正在使用此代码发布到我的应用程序墙

$attachment = array('message' => 'xxxxxxxxxxxxxxxx...',
            'name' => 'xxxxxxxxxxxxxxxxxxx',
            'caption' => 'xxxxxxxxxxxxxxxxxx',
            'link' => 'xxxxxxxxxxxxxxxxxx',
            'description' => 'xxxxxxxxxxxxxxxxxx',
            'picture' => 'xxxxxxxxxxxxxxxxxx',
            'actions' => array(array('name' => 'Download!',
                              'link' => 'xxxxxxxxxxxxxxxxxx'))
            );

$result = $facebook->api('/2222222222222/feed/','post',$attachment); 

当我手动发布到我的应用程序墙时,帖子出现在应用程序用户墙上并带有共享操作 但是当我使用上面的代码时,它只出现在应用程序墙上,只有类似和评论操作。 为什么? 以及如何将共享操作添加到actions数组?

4 个答案:

答案 0 :(得分:1)

我没有在网上找到任何答案,但我只是偶然找到了我的问题的解决方案 我从附件中删除了动作参数。

但如果附件中有链接参数,则不会显示共享操作,因此您必须放弃链接参数。

答案 1 :(得分:0)

操作链接的正确名称是: array(array('text'=>'Download!','href'=>'xxxxxxxxxxxxxxx'));

请记住,您无法在图表api中使用操作链接。所以这个功能仅限于REST api。

如果有帮助,请告诉我

答案 2 :(得分:0)

http://facebookanswers.co.uk/?p=270

本文解释了它。关键是:

'actions' => array('name'=>'Sweet FA','link'=>'http://www.facebookanswers.co.uk'),

这适用于添加一个动作。但是,我不确定如何添加两个。

答案 3 :(得分:0)

您的解决方案是here 而不是

$result = $facebook->api('/2222222222222/feed/','post',$attachment); 

使用

$result = $facebook->api('/2222222222222/links/','post',$attachment); 

我仍然面临一个小问题,这张照片在这个改变之后没有显示出来,如果我找到解决方案,我会回到这里发布它。