Uygulama Ayarlanmadı: Bu uygulama hala geliştirme modunda olduğu için erişemiyorsun. Kayıtlı bir test kullanıcısına geçiş yap veya uygulama yöneticisinden izin iste.

Diye bir hata veriyor facebook yölendirmesinde, bu arada kodlarını yazarsan yardımcı olabilirim, sunucu tarafında sınırsız offline token alma olayı da var. Aşağıda zamanında uğraştığım bir paylaşım zımbırtısı var, örnek olsun diye bırakıyorum, araştırıp deneyip kurgulamak sana kalmış. kolay gelsin.

session_start();
require_once __DIR__ . '/Facebook/autoload.php';
$fb = new Facebook\Facebook([
'app_id' => '458866701137174545453',
'app_secret' => '30f1372f7a377234393a1e88727e7daadb097',
'default_graph_version' => 'v2.10',
]);

// Önceki Access Token dosyadan okunur
$dosya = fopen('fbuzunsürelitoken.txt', 'r');
$icerik = fread($dosya, filesize('fbuzunsürelitoken.txt'));
/*echo $icerik;*/
fclose($dosya);

if (strlen($icerik) > 0)
{
$_SESSION['facebook_access_token'] = (string) $icerik;
$fb->setDefaultAccessToken($_SESSION['facebook_access_token']);

// 'GET' 'code' değişkenine sahipse kullanıcı geldiği yere yönlendirilir
if (isset($_GET['code'])) {
header('Konum: ./');
}
// Kullanıcı bilgisi alınır
try {
$profile_request = $fb->get('/me');
$profile = $profile_request->getGraphNode()->asArray();
} catch(Facebook\Exceptions\FacebookResponseException $e) {
// Facebook graph hata verirse
echo 'Graph returned an error: ' . $e->getMessage();
session_destroy();
// ullanıcı uygulama giriş sayfasına gönerken
header("Konum: ./");
exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
// Kullanıcı doğrulama veya diğer yerel hatalar için
echo 'Facebook SDK returned an error: ' . $e->getMessage();
exit;
}

//FB post content
$message = $_GET["PostMessage"];
/*$title = 'MAJE Ağ sosyal dağıtımı';*/
$link = $_GET["ShareLink"];
/*$description = 'MAJE Ağ sosyal dağıtımı';
$picture = 'https://wallpapers.wallhaven.cc/wallpapers/full/wallhaven-118257.jpg';*/

$attachment = array(
'message' => $message,
'name' => $title,
'link' => $link,
'description' => $description,
'picture'=>$picture
);

// post on behalf of page
$pages = $fb->get('/me/accounts');
$pages = $pages->getGraphEdge()->asArray();

foreach ($pages as $key) {
if ($key['id'] == $_GET["PageID"]) {
$post = $fb->post('/' . $key['id'] . '/feed', $attachment, $key['access_token']);
$post = $post->getGraphNode()->asArray();
}
}
echo "The message may have been sent.";
}
else
{
$helper = $fb->getRedirectLoginHelper();

$permissions = ['manage_pages', 'publish_pages']; // optional
try {
if (isset($_SESSION['facebook_access_token'])) {
$accessToken = $_SESSION['facebook_access_token'];
} else {
$accessToken = $helper->getAccessToken();
}
} catch(Facebook\Exceptions\FacebookResponseException $e) {
// Facebook graph hata verirse
echo 'Graph returned an error: ' . $e->getMessage();
exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
// When validation fails or other local issues
echo 'Facebook SDK returned an error: ' . $e->getMessage();
exit;
}
if (isset($accessToken)) {
if (isset($_SESSION['facebook_access_token'])) {

// Sonraki kullanımlar için elde edilen uzun süreli token dosyaya kaydedilir
$dosya = fopen('fbuzunsürelitoken.txt', 'w');
fwrite($dosya, $_SESSION['facebook_access_token']);
fclose($dosya);

$fb->setDefaultAccessToken($_SESSION['facebook_access_token']);
} else {
// Kısa vadeli Access Token alınır
$_SESSION['facebook_access_token'] = (string) $accessToken;
// OAuth 2.0 istemcisi
$oAuth2Client = $fb->getOAuth2Client();
// Kısa vadeli Access Token uzun vadeliyle değiştirilir
$longLivedAccessToken = $oAuth2Client->getLongLivedAccessToken($_SESSION['facebook_access_token']);
$_SESSION['facebook_access_token'] = (string) $longLivedAccessToken;
// Facebook için uzun süreli Access Token tanımlanır
$fb->setDefaultAccessToken($_SESSION['facebook_access_token']);
}
// 'GET' 'code' değişkenine sahipse kullanıcı geldiği yere yönlendirilir
if (isset($_GET['code'])) {
header('Konum: ./');
}
// Kullanıcı bilgisi alınır
try {
$profile_request = $fb->get('/me');
$profile = $profile_request->getGraphNode()->asArray();
} catch(Facebook\Exceptions\FacebookResponseException $e) {
// Facebook graph hata verirse
echo 'Graph returned an error: ' . $e->getMessage();
session_destroy();
// ullanıcı uygulama giriş sayfasına gönerken
header("Konum: ./");
exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
// Kullanıcı doğrulama veya diğer yerel hatalar için
echo 'Facebook SDK returned an error: ' . $e->getMessage();
exit;
}

//FB post content
$message = $_GET["PostMessage"];
/*$title = 'MAJE Ağ sosyal dağıtımı';*/
$link = $_GET["ShareLink"];
/*$description = 'MAJE Ağ sosyal dağıtımı';
$picture = 'https://wallpapers.wallhaven.cc/wallpapers/full/wallhaven-118257.jpg';*/

$attachment = array(
'message' => $message,
'name' => $title,
'link' => $link,
'description' => $description,
'picture'=>$picture
);

// post on behalf of page
$pages = $fb->get('/me/accounts');
$pages = $pages->getGraphEdge()->asArray();

foreach ($pages as $key) {
if ($key['id'] == $_GET["PageID"]) {
$post = $fb->post('/' . $key['id'] . '/feed', $attachment, $key['access_token']);
$post = $post->getGraphNode()->asArray();
}
}
echo "The message may have been sent.";


// Now you can redirect to another page and use the access token from $_SESSION['facebook_access_token']
} else {
// Eğer bütün işlemler tek bir sayfada yönetiliyorsa sesion alındıktan sonra geri dönülecek adres burasıdır, böyleliklesesion başladığında boşta beklemek yerine o session kullanılarak gerekli işlemler yaptırılabilir
$GeriDönüşAdresi = $helper->getLoginUrl('http://maje.eyuperdogan.com.tr/autopostem/facebook.php', $permissions);
echo 'Giriş Yap';
}
}