php - Auto post on facebook page as page admin with sdk4 (graph api) -
i seek post facebook page via website page admin. can personnal business relationship .
this code :
private $fb_api; private $fb_secret; private $fb_redirect = 'index.php/admin/ajout_actualite'; private $fb_helper; private $fb_scopes = array(/*'publish_actions', 'email', */'create_event', 'manage_pages', 'publish_stream'); private $fb_session; $data = $this->config->item('facebook')['key']; $this->fb_redirect = base_url($this->fb_redirect); $this->fb_api = $this->config->item('facebook')['key']; $this->fb_secret = $this->config->item('facebook')['secret']; facebooksession::setdefaultapplication($this->config->item('facebook')['key'], $this->config->item('facebook')['secret']); $this->fb_helper = new facebookredirectloginhelper($this->fb_redirect); if ( $this->session->userdata('access_token') ) { $this->fb_session = new facebooksession( $this->session->userdata('access_token') ); // validate access_token create sure it's still valid seek { if ( ! $this->fb_session->validate() ) { $this->fb_session = false; } } grab ( exception $e ) { // grab exceptions $this->fb_session = false; } }
and how post on page :
$loginurl = $this->fb_helper->getloginurl($this->fb_scopes); if($this->input->get('code') != null) { $s = file_get_contents("https://graph.facebook.com/oauth/access_token?client_id=".$this->fb_api."&redirect_uri=".urlencode($this->fb_redirect)."&client_secret=".$this->fb_secret."&code=".$this->input->get('code')); $s = parse_str($s, $out);//var_dump($s); $this->session->set_userdata(array("access_token" => $out['access_token'])); }else if($this->session->userdata('access_token') == null) { redirect($loginurl); } if($this->fb_session != null){ $response = (new facebookrequest( $this->fb_session, 'post', '/xxxxxxxx/feed', array( 'name' => 'this drop da bit', 'caption' => "i love baby", 'link' => 'http://lesjoiesducode.fr/', 'message' => 'unicorn 1 - 0 facebook' )
))->execute()->getgraphobject()->asarray(); }
i hope can help me :), i've read 4-5 topics there in bulk on previous sdk :/
thanks in advance help.
you using user access token phone call /{page-id}/feed
that's why post published on behalf of user.
to post on behalf of page itself, have utilize page access token. page access token, add together permission manage_pages
first login scope create call-
/{page-id}?fields=access_token
this give page access token. utilize token /{page-id}/feed
phone call pass additional parameter access_token
other parameters.
php facebook facebook-graph-api facebook-php-sdk
No comments:
Post a Comment