Как получить изображения с 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...
}
}
Итак, мои вопросы:
где я могу найти приложение-секрет для страницы FB? Я не могу подключиться к своей странице FB без этого, я думаю
как сгенерировать токен постоянного доступа или, если это невозможно, как сделать иначе?
Как добавить изображения (новые, общие и т. д.) в мой канал?
Благодарю.
1 ответ
Решение
- Для каждой страницы нет Секрета приложения, есть только Секрет приложения для Приложения. Вы можете найти его в настройках приложения.
- Расширенные / постоянные токены: https://developers.facebook.com/docs/facebook-login/access-tokens/ или http://www.devils-heaven.com/facebook-access-tokens/ - для получения записей фида неограниченной страницы, вы можете просто использовать токен доступа к приложению, и вы можете жестко закодировать его в своем коде PHP.
- Получение изображений в ленте, а не только в сообщениях: вам нужно указать, какие поля вы хотите получить, или вы получите только те, которые по умолчанию. Он называется "Декларативные поля": https://developers.facebook.com/docs/graph-api/changelog также ознакомьтесь со ссылкой на API: https://developers.facebook.com/docs/graph-api/reference/post