Простой пример для публикации на странице фан-сайта Facebook через PHP?

Я много раз искал, и я нашел устаревшие учебники, которые не работают …

У меня есть сайт, созданный с помощью PHP, и когда я отправляю определенную форму в свою область администратора, я хочу опубликовать на своей странице «fan fan» на Facebook,

RSS недоступен, так что у вас есть какой-либо пример для прямой публикации на странице фан-сайта Facebook (а не на стене пользователя) с помощью php sdk?

Спасибо!

    Наконец, после множества тестов он работал без PHP SDK. Это пошаговое руководство:

    1. Получить разрешения и токен страницы.

    Перейдите в https://developers.facebook.com/tools/explorer/ и выберите свое приложение из первого выпадающего меню слева.

    Нажмите кнопку «Получить токен доступа», а в окне «Выбрать разрешения» нажмите «Расширенные разрешения» и установите флажок «manage_pages» и «Публикация» и нажмите «Синяя кнопка« Получить доступ ».

    На этом шаге вас могут попросить предоставить разрешения вашему приложению для доступа к вашей учетной записи Facebook, принять.

    Затем нажмите в конце текстового поля рядом с раскрывающимся списком «GET» и замените номера для: me / accounts и нажмите синюю кнопку рядом с этим текстовым полем.

    Вы получите маркеры для всех своих страниц, включая страницу своего приложения. Найдите название своей страницы в списке, будет выглядеть так: «name»: «Ваше имя страницы»

    Когда вы разместите свою страницу, скопируйте токен доступа для страницы (будет очень длинным), это может выглядеть так: «access_token»: «XXXXXXXX» . Также скопируйте идентификатор страницы: « id»: «XXXXX» .

    Вот и все для этого шага, теперь мы можем начать кодирование.

    2. Опубликуйте свою страницу на стене через PHP

    Во-первых, для этого скрипта вам понадобится сервер, поддерживающий завиток.

    Мы начинаем PHP-документ, определяющий токен доступа к странице и идентификатор страницы, который мы получаем на первом шаге:

    <?php $page_access_token = 'XXXXXXX'; $page_id = 'YYYYYYYY'; 

    После этого мы создаем массив с информацией для публикации на нашей странице:

     $data['picture'] = "http://img.ruphp.com/php/image.jpg"; $data['link'] = "http://www.example.com/"; $data['message'] = "Your message"; $data['caption'] = "Caption"; $data['description'] = "Description"; 

    Вы можете, конечно, использовать любой другой параметр post, описанный в https://developers.facebook.com/docs/reference/api/post/, и если вам не нужен один или несколько параметров выше, вы можете просто удалить его.

    Итак, в этот момент мы добавляем к массиву токен доступа:

     $data['access_token'] = $page_access_token; 

    И мы установили наш URL-адрес для публикации на нашей странице:

     $post_url = 'https://graph.facebook.com/'.$page_id.'/feed'; 

    И последний шаг, мы будем использовать завиток, чтобы опубликовать наше сообщение в нашей стене страницы:

     $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $post_url); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $return = curl_exec($ch); curl_close($ch); ?> 

    После этого мы сможем сохранить наш PHP-документ и попытаемся его выполнить. Сообщение может появиться на нашей странице в Facebook.

    Надеюсь, этот код поможет другим людям с той же проблемой!

    Вы можете тестировать токены, используя отладчик токена доступа к Facebook

    Рабочее решение для API v.2.5

    1. Получить code для app_id качестве параметра response_uri

    https://www.facebook.com/dialog/oauth?client_id=".$app_id."&redirect_uri=".$response_uri."&response_type=code&scope=manage_pages,publish_pages

    1. Получите access_token на основе code , app_id и app_secret в результате response_uri

    https://graph.facebook.com/oauth/access_token?grant_type=authorization_code&client_id=".$app_id."&client_secret=".$app_secret."&code=".$code."&redirect_uri=".$response_uri

    1. Получить никогда не истекающий page_access_token для page_id на основе access_token

    https://graph.facebook.com/v2.5/".$page_id."?fields=access_token&access_token=".$access_token

    Вот ресурс, который вы ищете . Прокрутите Page Login вниз до Page Login в Page Login и прочитайте оттуда. Вы должны получить токен доступа для своей страницы, а затем использовать этот токен при публикации. Предполагается, что вы хотите, чтобы ваше сообщение появилось «со страницы». IE – размещение, как если бы вы были страницей.

    фактический вызов графика api для создания объекта post и его выполнение можно найти на этом URL-адресе из документации на facebook.

    В качестве дополнения к nmarti ответ. Действует для API v.2.4.

    Если вы не хотите идти в консоль Facebook API, скорее, вызовы API, есть несколько инструкций.

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

    1. Сделайте запрос на вход, чтобы получить токен пользователя:

    https://www.facebook.com/dialog/oauth?client_id=%app-id%&redirect_uri=%your-site-url%&response_type=token&scope=manage_pages,publish_pages

    В ответ вы должны получить% user-token%, сохранить его, вам понадобится следующий шаг.

    Прочитайте больше

    1. Попросите долгоживущий токен:

    https://graph.facebook.com/oauth/access_token?grant_type=fb_exchange_token&client_id=%app-id%&client_secret=%app-secret%&fb_exchange_token=%user-token%

    Теперь у вас будет% long-living-token%, необходимое для получения долговечного токена страницы.

    Прочитайте больше

    1. Теперь, получите список ваших страниц Facebook,

    https://graph.facebook.com/v2.4/%page-admin-user-id%/accounts/?access_token=%long-lived-token%

    Найдите в списке свою страницу и токен страницы, теперь вы можете продолжить публикацию на странице с использованием примера nmarti.

    Также Facebook говорит:

    Результирующий токен доступа к странице не будет иметь никакого срока действия.

    Прочитайте больше