Facebook使用最新的PHP SDK发布到商业/社区页面

时间:2014-09-26 15:05:04

标签: php facebook sdk

我试图将我的网站上的内容发布到我的脸书页面(使用最新的facebook api)。

连接到我的应用程序(工作正常)后,我将此代码发布到我的时间轴上。

$response = (new FacebookRequest(
$session, 'POST', '/me/feed', array(
'name' => 'Test 1',
'caption' => "Test 2",
'link' => 'https://www.google.com',
'message' => 'Test 3'
)));

这很好,但是当我改变' / me / feed'到' / nameofbusinesspage / feed'它似乎登录到Facebook确定,但然后返回一个冗长的错误消息开始。 。

致命错误:未捕获的异常' Facebook \ FacebookServerException'带有消息'发生了意外错误。请稍后重试您的请求。

我应该如何引用商家/社区页面?

旧SDK上有大量线程 - 但这是v4.0(看起来完全不同)。

2 个答案:

答案 0 :(得分:1)

您是否尝试使用'/ id-of-businesspage / feed'代替'/ nameofbusinesspage / feed'?

答案 1 :(得分:0)

终于弄明白了 - 对于其他任何人。 。

以下是使用facebook建立登录后的代码(由$ session var引用)。 。

$pageid ="**********";
$get = (new FacebookRequest($session, 'GET', '/me/accounts'));
$accounts = $get -> execute() -> getGraphObject() -> asArray();
// get data object
$data = $accounts["data"];
// get access_token from account with matching id
foreach ($data as $page) { 
if ($page -> id == $pageid) { $accesstoken = $page -> access_token; } }
// post to facebook account
$post = (new FacebookRequest($session, 'POST', '/'.$pageid.'/feed', 
array('access_token' => $accesstoken, 
'name' => 'Test 1', 
'caption' => "Test 2", 
'link' => 'https://www.google.com', 
'message' => 'Test 3')));
$return = $post -> execute() -> getGraphObject() -> asArray();

$ pageid是您的Facebook页面的(数字)ID(位于'设置')。

希望在我因试错而浪费的那一天拯救某人。