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

Facebook使用最新PHP SDK发布到商业/社区页面,php,facebook,sdk,Php,Facebook,Sdk,我正在尝试将我的网站上的内容发布到我的facebook页面(使用最新的facebook api) 在连接到我的应用程序(工作正常)后,我有了这个代码,可以在我的时间线上发布一些东西 $response = (new FacebookRequest( $session, 'POST', '/me/feed', array( 'name' => 'Test 1', 'caption' => "Test 2", 'link' => 'https://www.google.com',

我正在尝试将我的网站上的内容发布到我的facebook页面(使用最新的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”更改为“/nameofBusiness Page/feed”时,它似乎登录到facebook ok,但随后返回一条很长的错误消息,开始

致命错误:未捕获异常“Facebook\FacebookServerException”,消息为“发生意外错误”。请稍后重试您的请求

我该如何参考商业/社区页面


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

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

最终解决了这个问题-对于其他人来说

以下是登录facebook后的代码(由$session变量引用)

$pageid是您的facebook页面的(数字)id(可在“设置”下找到)


希望它能帮别人省去我浪费在试验和错误上的一天。

感谢您的回复-是的,我也尝试了id-同样的问题
$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();