Site icon ИТ Блог. Администрирование серверов на основе Linux (Ubuntu, Debian, CentOS, openSUSE)
Среда, 18 февраля, 2026

Добавление новостной ленты Facebook на сайт

Добавление новостной ленты Facebook на сайт

Некоторое время назад я хотел добавить пользовательский Facebook-канал на сайте для того, чтобы отображать записи из клиента Facebook на странице. Сайт был неплохой и и я не хотел портить стандартным Facebook фирменным фреймом-лентой новостей.

Так я боролся через Facebook сайт разработчиков и после нескольких недель беспорядков я был в состоянии установить вместе PHP-скрипт, который взаимодействует с Facebook API и извлекает данные канала, чтобы позволить вам отображать это на твое усмотрение!

Вы можете скачать стандартный плагин для канала Facebook, но для кто хочет приключений я даю краткий обзор того, как получить и отобразить данные json из Facebook в случае, если вы захотели попробовать это самостоятельно.

Вот основная последовательность событий:

1) Зарегистрироваться как разработчик с Facebook, создать “приложение” и получить маркер доступа.

Перейти на страницу разработчиков: https://developers.facebook.com/ и зарегистрироваться там.

2) найти ID страницы в Facebook страницу, которую вы хотите отобразить.

Если у вас есть Facebook страницу с URL вроде этого: https://www.facebook.com/AndreyEx затем идентификатор страницы-это просто ‘AndreyEx’. Если ваш URL-Адрес страницы является структурированный такой: https://www.facebook.com/pages/name-of-business/1525282521084169 затем идентификатор страницы на самом деле число в конце, так что в этом случае ‘1525282521084169‘.

3) открыть в формате json.

Просто поставьте ваш ID страницы и маркер доступа в URL ниже и вы теперь имеете доступ к json-массиву данных.

https://graph.facebook.com/YOUR_PAGE_ID/posts?access_token=YOUR_ACCESS_TOKEN

Это будет выглядеть примерно так:

Добавление новостной ленты Facebook на сайт

4) получать данные и расшифровать его.

$page_id = 'YOUR_PAGE_ID'; $access_token = 'YOUR_ACCESS_TOKEN'; //Get the JSON 
$json_object = @file_get_contents('https://graph.facebook.com/' . $page_id . '/posts?access_token=' . $access_token); //Interpret data 
$fbdata = json_decode($json_object);

5) цикл по массиву данных, и отображения каждого поста

foreach ($fbdata->data as $post ) { 
$posts .= '<p><a href="' . $post->link . '">' . $post->story . '</a></p>'; 
$posts .= '<p><a href="' . $post->link . '">' . $post->message . '</a></p>'; 
$posts .= '<p>' . $post->description . '</p>'; 
$posts .= '<br />'; 
}

Собирая все вместе получаем:

$page_id = 'YOUR_PAGE_ID'; $access_token = 'YOUR_ACCESS_TOKEN'; //Get the JSON 
$json_object = @file_get_contents('https://graph.facebook.com/' . $page_id . '/posts?access_token=' . $access_token); //Interpret data 
$fbdata = json_decode($json_object); 
foreach ($fbdata->data as $post ) { 
$posts .= '<p><a href="' . $post->link . '">' . $post->story . '</a></p>'; 
$posts .= '<p><a href="' . $post->link . '">' . $post->message . '</a></p>'; 
$posts .= '<p>' . $post->description . '</p>'; 
$posts .= '<br />'; 
} //Display the posts echo $posts;

Некоторые заметки:

1) в Facebook страницы должны быть публичными, это означает, что должен в состоянии получить доступ к странице без необходимости входа в Facebook.

2) Если веб-сервер с PHP настройках есть опция allow_url_fopen отключен, то функции file_get_contents не работают. Если это так, то у вас есть два варианта: либо установите его в положение ON путем редактирования вашего PHP.ini-файл (на Apache), а параметр опция allow_url_fopen = on.

Если вы боретесь, чтобы получить свой канал для работы или просто не хотите тратить время, выясняя, как отобразить его так, как вы хотите затем рассмотреть вопрос о установки плагина. Он доступен как плагин для WordPress, настраиваемый и позволяет отображать всю ширину фотографии, видео, события, комментарии и многое другое.

Скачать плагин WordPress для Facebook.

Exit mobile version