- Используйте Facebook PHP SDK, чтобы получить авторизацию от пользователя, и используйте метод "scope", чтобы получить разрешение "read_stream", которое позволит увидеть поток профиля пользователя, более известный как "wall".", но, поскольку вы также не хотите видеть там обновления друзей, вы можете запросить разрешение" offline_access ", а затем, после того как пользователь войдет в Facebook, сайт вернет вам данные со стенами пользователей.и там домашние посты (домашние посты содержат данные, на которые они подписаны, поэтому будут посты друзей и посты других страниц).
Затем, когда у вас есть разрешение «offline_access», выВы можете получить эти данные в любое время, используя токен доступа пользователя, указанный в этом разрешении.
Этот файл проверяет, находится ли пользователь в сети Facebook, в противном случае он будет перенаправлен на страницу входа в систему ИЕсли пользователь еще не дал разрешение, его об этом попросят.«Область» после loginURL - это то место, куда вы хотите поместить необходимые разрешения.
<code><?php
require 'facebook.php'; // Make sure to have the Facebook PHP SDK
// Create our Application instance (replace this with your appId and secret).
$facebook = new Facebook(array(
'appId' => 'APPID',
'secret' => 'APPSECRET',
));
// ----------------------------------------------------------------------------------------
// ----------------------------------------------------------------------------------------
// Get User ID
$user = $facebook->getUser();
/* We may or may not have this data based on whether the user is logged in.
If we have a $user id here, it means we know the user is logged into
Facebook, but we don't know if the access token is valid. An access
token is invalid if the user logged out of Facebook. */
if ($user) {
try {
// Proceed knowing you have a logged in user who's authenticated.
// These are the graph calls -->
$dt = $facebook->api('/me');
$lk = $facebook->api('/me/likes');
} catch (FacebookApiException $e) {
error_log($e);
$user = null;
}
}
// ----------------------------------------------------------------------------------------
// ----------------------------------------------------------------------------------------
// Handler for Login Status
if ($user) {
$logoutUrl = $facebook->getLogoutUrl();
} else {
$loginUrl = $facebook->getLoginUrl(array("scope" => "email,user_birthday,user_likes,user_location,offline_access,read_stream"));
}
// ----------------------------------------------------------------------------------------
?>
<?php if (!$user): header ('Location:'.$loginUrl.''); //checks if the user is logged in
else:
// Do Something here. This next bit of code shows what comes out of those calls.
echo "<pre>";
print_r($dt);
echo"
"; echo""; echo"
";
print_r($lk);
echo"
"; endif?>