Как получить изображения с FB на сайт

Я работаю над публикацией сообщений с нашей страницы FB на нашем сайте. Каждый новый пост и фотографии, которые мы добавили на нашу страницу FB, мне тоже нужно показывать на нашем сайте.

У меня есть этот код, но я не работаю так, как мне нужно.

require 'php-graph-sdk-5.x/src/Facebook/autoload.php';

$fb = new Facebook\Facebook([
    'app_id' => '...',
    'app_secret' => '{app-secret}', // don't know where to find app_secret for my page, I've found that just for apps, not pages
    'default_graph_version' => 'v2.10'
]);

$access_token = '...'; // generated in developers, but with just for 12 hours, than this token is expired... :-(

try {
    // Returns a `Facebook\FacebookResponse` object
    $response = $fb->get('me?fields=id,name,feed,data', $access_token);
} catch(Facebook\Exceptions\FacebookResponseException $e) {
    echo 'Graph returned an error: ' . $e->getMessage();
    exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
    echo 'Facebook SDK returned an error: ' . $e->getMessage();
    exit;
}

$graphNode = $response->getGraphNode();

foreach ($graphNode as $node) {
    foreach ($node as $items) {
        print_r($items);

        // when access token was valid, I got posts from out FB page. But with no images, didn't find how to get add images to this feed...
    }
}

Итак, мои вопросы:

  1. где я могу найти приложение-секрет для страницы FB? Я не могу подключиться к своей странице FB без этого, я думаю

  2. как сгенерировать токен постоянного доступа или, если это невозможно, как сделать иначе?

  3. Как добавить изображения (новые, общие и т. д.) в мой канал?

Благодарю.

1 ответ

Решение
  1. Для каждой страницы нет Секрета приложения, есть только Секрет приложения для Приложения. Вы можете найти его в настройках приложения.
  2. Расширенные / постоянные токены: https://developers.facebook.com/docs/facebook-login/access-tokens/ или http://www.devils-heaven.com/facebook-access-tokens/ - для получения записей фида неограниченной страницы, вы можете просто использовать токен доступа к приложению, и вы можете жестко закодировать его в своем коде PHP.
  3. Получение изображений в ленте, а не только в сообщениях: вам нужно указать, какие поля вы хотите получить, или вы получите только те, которые по умолчанию. Он называется "Декларативные поля": https://developers.facebook.com/docs/graph-api/changelog также ознакомьтесь со ссылкой на API: https://developers.facebook.com/docs/graph-api/reference/post
Другие вопросы по тегам