首页 文章

如何在Facebook粉丝页面上发布帖子作为Graph API中的Page Owner或Admin

提问于
浏览
0

我正在做一个需要在Facebook页面上发布帖子的PHP项目 . 例如,我有一个电子商务网站 . 当我创建产品时,新产品的链接将在电子商务的Facebook页面上共享 . 现在我以这种方式在Facebook Graph API资源管理器工具(https://developers.facebook.com/tools/explorer)上测试它 .

  • 我生成了一个具有正确权限的access_token(manage_pages和publish_actions) .

  • 我将HTTP POST方法发送到此URL并使用以下字段:

  • 网址 - / feed

  • fields - mesasge = ,published = true,link =

当我去查看我的Facebook粉丝页面时,它只是作为访客帖子发布 . 我的意思是由访问者发布(基于Facebook粉丝页面打开的帐户),并且它不是作为网站管理员或网站所有者发布的 . Fan Page不会将该帖子视为发布 .

1 回答

  • 0

    最后,经过大量测试后,它没有PHP SDK . 这是一步一步的指南:

    Get permissions and the page token:
    

    转到https://developers.facebook.com/tools/explorer/并从左侧的第一个下拉菜单中选择您的应用 .

    单击“获取访问令牌”按钮,在“选择权限”窗口中,单击“扩展权限”并检查manage_pages和publish_stream,然后单击“获取访问令牌”蓝色按钮 .

    在此步骤中,系统可能会要求您为应用添加访问Facebook帐户的权限,接受 .

    接下来,单击“GET”下拉列表旁边的文本字段末尾,并替换:me / accounts的数字,然后单击此文本字段旁边的蓝色按钮 .

    您将获得所有页面的令牌,包括您的应用页面 . 在列表中找到您的页面名称,如下所示:“name”:“您的页面名称”

    找到页面后,复制页面的访问令牌(会很长),如下所示:"access_token":"XXXXXXXX" . 同时复制页面的id:"id":"XXXXX" .

    这就是这一步,我们现在可以开始编码了 .

    Post to your page wall via PHP
    

    首先,对于这个脚本,你需要一个支持curl的服务器 .

    我们启动定义页面访问令牌的PHP文档以及我们在第1步中获得的页面ID:

    <?php
    $page_access_token = 'XXXXXXX';
    $page_id = 'YYYYYYYY';
    

    之后,我们创建一个数组,其中包含要发布到页面墙的信息:

    $data['picture'] = "http://www.example.com/image.jpg";
    $data['link'] = "http://www.example.com/";
    $data['message'] = "Your message";
    $data['caption'] = "Caption";
    $data['description'] = "Description";
    

    您当然可以使用https://developers.facebook.com/docs/reference/api/post/中描述的任何其他post参数,如果您不需要上面的一个或多个参数,则只需删除它即可 .

    好的,此时我们向数组添加访问令牌:

    $data['access_token'] = $page_access_token;
    

    我们设置了我们的帖子网址,在我们的页面中发布:

    $post_url = 'https://graph.facebook.com/'.$page_id.'/feed';
    

    最后一步,我们将使用curl在页面墙中发布消息:

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $post_url);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $return = curl_exec($ch);
    curl_close($ch);
    ?>
    

    之后,我们可以保存我们的php文档,并尝试执行它 . 该帖子可能会出现在我们的Facebook页面中 .

相关问题