使用PHP管理Facebook页面

GZa*_*man 1 php facebook facebook-graph-api

我希望使用粉丝页面将我当前的网站更深入地与Facebook集成(注意:我确实注意到Facebook支持的Open Graph协议,但我希望创建一个网站范围的粉丝页面).
我知道您可以使用Facebook创建和管理粉丝页面,但我正在寻找一种方法来使用PHP脚本 - 例如,发布到粉丝页面墙,使用粉丝页面创建活动,理想情况下 - 创建辅助页面粉丝页面即时.
在浏览Facebook的开发人员部分后,我没有找到使用Facebook API从外部执行这些任务的方法.
所以我的问题是:你将如何实现这一目标?

谢谢!

Jim*_*ein 6

将帖子发布到您的页面以及创建事件都是相对简单的任务.您可以使用Graph API来执行此操作.

详细了解有关出版的区域.它为您提供了发布如何工作的一般概述,这可以应用于整个图表.

此外,有关Graph API 的Events部分的文档有一个示例cURL帖子,介绍如何通过Graph API创建新事件.

向您的Facebook页面发布任何内容都需要您获得manage_pages 扩展权限,并且获得offline_access权限也许是一个好主意.

发布到页面墙并创建事件(在php中)的示例看起来很像这样:

<?php

require 'facebook.php';

$fb = new Facebook(array(
    'appId' => FB_APP_ID,
    'secret' => FB_APP_SECRET,
    'cookie' => true
));

$your_page_id = '123123123';

//get the access token to post to your page via the graph api
$accounts = $fb->api("/me/accounts");
foreach ($accounts['data'] as $account)
{
    if ($account['id'] == $your_page_id)
    {
        //found the access token, now we can break out of the loop
        $page_access_token = $account['access_token'];
        break;
    }
}

try
{
    //publish a story to the page's wall (as the page)
    $post_id = $fb->api("/{$your_page_id}/feed", "POST", array(
        'message' => "Hello to all my fans, I love you!"
        'access_token'  => $page_access_token;
    ));

    echo "Post published. ID: {$post_id}<br>";

    //create a new event.
    $event_id = $fb->api("/{$your_page_id}/events", "POST", array(
        "name"  => "My Totally Awesome Event, You Better Show UP!",
        "start_time" => time(), //it starts now...duh!
        "location"  => "Anywhere, USA"
    ));

    echo echo "Event created. ID: {$event_id}<br>";
}
catch (Exception $e)
{
    var_dump($e);
}
Run Code Online (Sandbox Code Playgroud)

至于动态创建Pages,唯一可以做到这一点的方法是使用Open Graph Protocol.这里唯一的限制是页面必须具有唯一的URL.因此,您可以为每个Open Graph对象分配一个唯一的ID,并为其指定一个URL http://www.mysite.com/pages?id=123456.这将允许您输出在FB上生成页面所需的Open Graph标记.然后,您可以使用图形API来获取的Open Graph对象后,有人喜欢它像这样的ID: http://graph.facebook.com/?ids=http://www.mysite.com/pages?id=123456.

您可以使用与发布到标准Facebook页面完全相同的方式发布到这些Open Graph对象.

希望有所帮助!