0

我的问题很简单。如何使用 PHP 在最近的股票和活动上发布但不在墙上(时间线)上。(发布动作)。我已经用 javascript 完成了,但我想要它在 php 中

我已经测试过了:

$params = array(
            'message'       =>  "This post is a test",
            'name'          =>  "Titre de mon test",
            'caption'       =>  "My Caption",
            'description'   =>  "Some Description...",
            'link'          =>  "http://stackoverflow.com",
            'actions' => array('name'=>'Recipe','link'=>'url'),
            'picture'       =>  "http://i.imgur.com/VUBz8.png",
        );

        $post = $facebook->api("/$user/feed","POST",$params);

谢谢。

我发现编辑:

我发现

<meta property="og:title" content="My article" />
<meta property="og:type" content="namespace:recipe" />
<meta property="og:url" content="http://url/" />
<meta property="og:image" content="" />
<meta property="fb:app_id" content="apikey" />
<meta property="og:description" content="My wonderful article" />

和php

try {
        $action = array('name' => 'recipe', 'link' => 'http://url/');
        $actions = json_encode($action);
        $params = array('recipe'=>'http://url/','access_token'=>$facebook->getAccessToken(), 'actions'=> urlencode($actions));
        $out = $facebook->api('/me/namespace:cook','post',$params);
        echo "Your post was successfully posted to UID: $user";

    }
    catch (FacebookApiException $e) {
       $result = $e->getResult();
    }


}
4

1 回答 1

1

为了发布活动,您需要创建一个动作和对象。您需要按照http://developers.facebook.com/docs/opengraph/keyconcepts/上的说明进行操作。

您在问题中指定的 PHP 和 JavaScript 代码对于将操作发布到用户的个人资料是正确的,前提是您已请求publish_actions用户的许可。该操作还需要得到 Facebook 的批准,然后用户才能使用它。

$params = array( 'recipe'=>'http://url/' );
$out = $facebook->api( '/me/namespace:cook','post', $params );
if ( $out )
    echo "Activity posted";
else
    echo "Post was unsuccessful";
于 2012-05-23T11:32:57.663 回答