Использование Facebook PHP SDK, подключение и настройка

Основная проблема тех, кто начинает работать с Facebook SDK, это наличие предыдущего опыта работы с другими сторонними API и SDK. Просто забудьте все, что знали раньше :). Внутренний мир разработчиков facebook богат и многообразен, потому простых решений вы тут не увидите.

Т.к. очередная версия  SDK устаревает в течении 2 лет (точнее гарантированно работает не более 2-х лет с момента релиза), то лучше читать гайд от самого facebook.

Он вот тут — https://developers.facebook.com/docs/php/gettingstarted

Текущая версия — v2.8. Раз вы пришли сюда, то, видимо, стиль документации facebook сидит у вас где то в печенках :).

Модель работы в общих чертах

Чтобы что то получить/передать через API, нужно, чтобы вы представились Facebook. В конечном счете, всё сводится к тому, что вы должны получить «маркер доступа». Это такой временный ключ.

Существуют разные типы маркеров доступа (да, всё не просто):

https://developers.facebook.com/docs/facebook-login/access-tokens

Они отличаются во своим возможностям. Типичный подход — использование маркера доступа приложения (МДП).

Но чтобы получить МДП, нужно сначала зарегистрировать приложение.

На момент написания статьи актуальная версия PHP SKD 5.4. Скачать можно здесь — https://github.com/facebook/facebook-php-sdk-v4/. Если выйдет свежая версия, ориентируетесь на месте. После этого можно приступать к написанию кода.

Далее все этапы подробнее.

Регистрация приложения на Facebook

Не так сложно как звучит. Фактически, мы создаём учетную запись, через которую будет производится доступ к API.

Переходите на https://developers.facebook.com/apps/, жмите по кнопе — «добавить приложение». Заполняйте форму (она выше на скриншоте), и вы попадете в карточку вашего только что созданного приложения.

Здесь нам понадобится значение двух полей: идентификатор приложения (app_id) и ключ-секрет (app secret).

Установка PHP SDK Facebook.

Самая свежая версия работает с PHP v5.4. В архиве куча всякого хлама, нас интересует только библиотеки в папке /src/Facebook/.

Создадим для них, к примеру, папку /fb-sdk в корне вашего сайта. Копируем :)

А PHP добавим следующий код:

В код нужно вставить ваши значения ключа и секрета.

Создание токена доступа приложения (accessToken)

Пришло время создать токен доступа.

В документации продемонстрировано множество способов получения токена из разных контекстов, но все как то «мимо кассы» — то из facebook canvas, то из авторизации пользователя. Надеюсь, этот пример будет более полезным.

Снова пригодится ключ и секрет:

Пример получения данных

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

У меня выводит следующую инфу:

Доступные поля объектов — смотрите в документации: https://developers.facebook.com/docs/reference/php в секции reference.

Мало букафф? Читайте есчо !

Как сформировать отдельный хидер или футер для первой страницы в mPDF на примере Drupal

Декабрь 6, 2025 г.

Когда вам нужно создать PDF-документ с использованием библиотеки mPDF, бывает необходимо сделать так, чтобы на первой странице отображался отдельный футер (или хидер), отличающийся от остальных страниц. В этом примере мы рассмотрим, как использовать селектор ...

Читать

Пишем логи в Drupal 9

Октябрь 8, 2021 г.

Привычная функция watchdog, которую мы использовали в 6/7 версиях, к девятке пережила эволюцию до сервиса логирования. Бывшее ранее: [crayon-6aaf429904b3f614238313/] Сейчас выглядит так: [crayon-6aaf429904b45317765503/] Помимо того, ...

Читать

JavaScript - как удалить элемент массива

Ноябрь 14, 2016 г.

Javasctipt. Есть массив из N элементов. Нужно удалить i-й. Решение: Нам нужен новый массив без i-го элемента. Если это не хеш, то используем функцию объекта Array.splice().  [crayon-6aaf429904d4c748612549/] Функция позволяет не только удалять, ...

Читать

Как использовать callback функции внутри класса

Июнь 5, 2017 г.

Пробовали ли вы использовать функции PHP, требующие указания кол-бек функции в качестве аргумента? Я часто пользуюсь preg_replace_callback(). Если функция вызывается внутри класса, то хотелось бы и callback разместить внутри этого же класса (объекта). ...

Читать
 

Комментарии к «Использование Facebook PHP SDK, подключение и настройка»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий:

Много комментариев в “Использование Facebook PHP SDK, подключение и настройка”

  1. Job:

    Здраствуйте, у меня выдает ошибку где

    $fb = new Facebook\Facebook([

    выдает синтаксическую ошибку на слэш,
    как мне можно это исправить?