Muitos sites publicam informações sobre novos materiais nas redes sociais, isso pode ser feito no Facebook. Supõe-se que você já tenha criado o 
aplicativo e especificado os hosts permitidos para o redirecionamento OAuth na guia "Avançado" do item de menu "Configurações". Portanto, iniciamos a sessão com a função session_start (), quem precisar pode ativar a saída de erro se estiver desativado. 
error_reporting(E_ALL); ini_set("display_errors", 1); 
Em seguida, faça o download da biblioteca PHP SDK (que está no github) e extraia a pasta src (que pode ser renomeada). Em seguida, especifique o caminho para o carregador automático.
 require_once __DIR__ . '/_src/autoload.php'; 
Agora crie uma instância da classe do Facebook.
 $fb = new Facebook\Facebook([ 'app_id' => '1234567890123456',  
Chamamos o assistente para executar a autorização, especifique as permissões necessárias para publicar na página.
 $helper = $fb->getRedirectLoginHelper();  
Depois que você for redirecionado para o site do Facebook, onde precisará fazer login, siga o link especificado na função getLoginUrl (). Aqui, mais uma vez, você chama o assistente de quem você obtém o usuário access_token.
 $helper = $fb->getRedirectLoginHelper(); try { $accessToken = $helper->getAccessToken(); } catch(Facebook\Exceptions\FacebookResponseException $e) { echo 'Graph  : ' . $e->getMessage(); exit; } catch(Facebook\Exceptions\FacebookSDKException $e) { echo 'Facebook SDK  : ' . $e->getMessage(); exit; } if (isset($accessToken)) $_SESSION['facebook_access_token'] = (string) $accessToken; elseif ($helper->getError()) exit; 
Se você tentar postar na página com esse token, o erro "Erro de permissões" será retornado, pois isso requer um token de página. Para obtê-lo, você precisa chamar a função get () do objeto do Facebook e passar dois parâmetros para ele: o URL da solicitação de token da página que contém o ID da página na qual você deseja postar e o access_token anteriormente do usuário.
 try { $response = $fb->get('/id_?fields=access_token', $_SESSION['facebook_access_token']); } catch (Facebook\Exceptions\FacebookResponseException $e) { echo 'Graph  : ' . $e->getMessage(); exit; } catch (Facebook\Exceptions\FacebookSDKException $e) { echo 'Facebook SDK  : ' . $e->getMessage(); exit; }  
O token recebido terá uma duração ilimitada. As informações do token estão disponíveis através do 
depurador . Agora você pode tentar postar uma mensagem.
 $str_page = '/1234567890123456/feed'; $feed = array('message' => ''); try { $response = $fb->post($str_page, $feed, 'access_token_'); } catch (Facebook\Exceptions\FacebookResponseException $e) { echo 'Graph  : ' . $e->getMessage(); exit; } catch (Facebook\Exceptions\FacebookSDKException $e) { echo 'Facebook SDK  : ' . $e->getMessage(); exit; } $graphNode = $response->getGraphNode(); echo ', id: ' . $graphNode['id']; 
Se necessário, você pode sair do Facebook.
 $helper = $fb->getRedirectLoginHelper(); $logoutUrl = $helper->getLogoutUrl($_SESSION['facebook_access_token'], 'url____'); echo '<a href="' . htmlspecialchars($logoutUrl) . '"></a>';