2013-06-24 20 views
5

Użyłem następującego kodu. Działa bez subskrypcji "schedule_publish_time", w przeciwnym razie dostaję ten błąd "(# 100) Nie możesz określić zaplanowanego czasu publikacji opublikowanego postu". Mam już zarejestrowaną aplikację z innym kawałkiem kodu. To takie dziwne.Błąd 100 zaplanować post na Facebooku Strona

include_once("inc/facebook.php"); //include facebook SDK 

$appId = '21xxxxxxxxxxx'; //Facebook App ID 
$appSecret = '6b8f4bxxxxxxxxxxxxxd56'; // Facebook App Secret 
$return_url = 'http://localhost:8888/...'; //return url (url to script) 
$homeurl = 'http://localhost:8888/...'; //return to home 
$fbPermissions = 'publish_stream,manage_pages'; //Required facebook permissions 

//Call Facebook API 
$facebook = new Facebook(array(
    'appId' => $appId, 
    'secret' => $appSecret, 
    'cookie' => true, 
    'fileUpload' => true 
)); 

    $accounts = $facebook->api('/me/accounts'); 
$PAGE_ID = get_option('fb_post_cron_page'); // it is an option saved in WordPress 

foreach($accounts['data'] as $account){ 
    if($account['id'] == $PAGE_ID){ 
    $ACCESS_TOKEN = $account['access_token']; 
    } 
} 

$post_url = '/'.$PAGE_ID.'/photos'; 
$upload_dir = wp_upload_dir(); 
$upload_dir= $upload_dir['path']; 


$timezone= 'Europe/Rome'; 
$date = new DateTime($dateStr, new DateTimeZone($timezone)); 

//posts message on page statues 
$args = array(
    'access_token' => $ACCESS_TOKEN, 
    'source' => '@' . $image_abs_path, 
    'message' => $post_message, 
    'published' => true, 
    'scheduled_publish_time' => $date->getTimestamp() 
); 

try { 
    $postResult = $facebook->api($post_url, 'post', $args); 
} catch (FacebookApiException $e) { 
    echo $e->getMessage(); 
} 

Odpowiedz

8

trzeba ustawić 'opublikowany' fałszywego

$args = array(
    'access_token' => $ACCESS_TOKEN, 
    'source' => '@' . $image_abs_path, 
    'message' => $post_message, 
    'published' => false, 
    'scheduled_publish_time' => $date->getTimestamp() 
);