Использование 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.

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

Создание экземпляра класса по его имени

Март 14, 2023 г.

Получение доступа к классу в режиме рантайм добавляет известной гибкости. Одна из типичных задач - создание экземпляра класса по его имени. В котлин это делается вот так: [crayon-6a2f9ac791c17221699339/] Есть несколько нюансов/рекомендаций. ...

Читать

Редактируем атрибуты ссылки в twig шаблоне

Июль 14, 2023 г.

Как без хуков preprocess в Drupal добавить, например, атрибут target для ссылки в шаблоне? Например, возьмем штатный шаблон file-link.html.twig: [crayon-6a2f9ac791e45947119300/] Используем фильтр merge, добавляя нужные атрибуты: [crayon-6a2f9ac791e4d165656670/]

Читать

Drupal: возврат страницы из контроллера с установкой cookie и использованием шаблона темы

Сентябрь 12, 2025 г.

В Drupal контроллеры чаще всего возвращают Renderable-массивы. Такие массивы автоматически проходят через систему рендеринга и подставляются в базовый шаблон темы (page.html.twig). Но иногда бывает нужно получить полный Response с темизацией вручную — ...

Читать

Ошибка background-size:cover в Firefox при рендеринге svg

Сентябрь 21, 2021 г.

По какой то причине firefox не верно отрабатывает свойство background-size: cover для SVG. Чтобы воспроизвести попробуйте задать стили вроде: [crayon-6a2f9ac7920c7432788100/] Чтобы исправить ситуацию, вы можете заменить размер фона на следующий: ...

Читать
 

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

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



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

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

  1. Job:

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

    $fb = new Facebook\Facebook([

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