创建一个Facebook应用程序,可以发布到我是管理员的页面

时间:2014-09-05 10:51:29

标签: php facebook facebook-graph-api

作为我正在处理的网站的一部分,我需要能够直接发布到我的客户Facebook页面的墙上。

我已经创建了一个应用程序,并且只需使用:

即可成功发布到我自己的虚拟配置文件中
$request = new FacebookRequest(
    $session, 'POST', '/me/feed', array(
    'link' => 'my_url',
        'message' => 'my_message'
     );

现在我需要对此进行修改以发布到我的客户页面,我假设我无法改变“我'通过他们的页面ID,因为这将是一个巨大的安全漏洞,所以我需要获得许可以某种方式发布到他们的页面。我是该页面的管理员,我该怎么做?或者我是否真的需要使用创建该页面的用户帐户登录?

我在开发人员部分查看了创建应用的所有内容,但似乎没有任何方法可以为其他帐户创建应用。

对此我们将不胜感激。 非常感谢

3 个答案:

答案 0 :(得分:0)

请查看应用程序开发人员部分。它会对你有所帮助。在开发者帐户上创建,您将能够访问页面。

Facebook Developer Section

答案 1 :(得分:0)

要发布到Facebook页面,您需要完成两个步骤 -

  • 使用扩展用户令牌
  • 以用户身份登录
  • 获取页面的用户标记
  • 使用页面标记发布到页面。

以下代码应该能够将消息发布到您的页面。 我没有调试它,因为它从我自己的网站简化:-)不要忘记包含Facebook SDK文件:

function extract_access_token_of_facebook_page_by_id($array_of_all_user_pages,$page_id){
    $num_of_pages=count($array_of_all_user_pages['data']);
    $the_page_token="";

    for ($i=0; $i<$num_of_pages; $i++){
        if ($array_of_all_user_pages['data'][$i]['id']==$page_id){
            $the_page_token=$array_of_all_user_pages['data'][$i]['access_token'];
            }
        }
    return $the_page_token;
    }

$facebook = new Facebook(array(
            'appId'     => $YOUR-APP-ID,
            'secret'    => $YOUR-APP-SECRET,
            ));

try
    {
    $facebook->setAccessToken($THE-USER-TOKEN);
    $page_id = YOUR-PAGE-ID;
    $fanpage_access_token=extract_access_token_of_facebook_page_by_id($facebook->api("/me/accounts"),$page_id);
    $args = array();
    $args['access_token'] = $fanpage_access_token;
    $args['message'] = "THE TEXT YOU WANT TO POST";
    $api_url="/".$page_id."/feed";
    $api_response = $facebook->api($api_url, 'post', $args);
    }
catch (FacebookApiException $e) 
    {
echo 'Error facebookservice'.$e;
    }

答案 2 :(得分:0)

你的代码适用于旧的sdk版本我认为,它对我不起作用:致命错误:Class&#39; Facebook&#39;找不到