Многие специалисты по SMM считают Instagram самой перспективной социальной платформой для продвижения товаров. И поэтому многие владельцы сайтов с удовольствием интегрируют свою ленту из Instagram в сайты, в частности в WordPress. Существует множество плагинов, предлагающих интеграцию разной степени сложности, однако в один момент все они перестали работать.
При попытке заново получить токен пользователи начали получать такую ошибку:
{"code": 403, "error_type": "OAuthForbiddenException", "error_message": "You are not a sandbox user of this client"}
Рассмотрим способ эту ошибку устранить.
С 1 июня Instagram сменил политику работы со своим API. Теперь доступ к ленте пользователя можно получить только через так называемое приложение, а чтобы его создать — надо зарегистрироваться как разработчик. Впрочем, такая философия известна тем, кто пытался интегрировать WordPress и вКонтакте и Facebook.
Итак, чтобы вновь запустить ленту инстаграм-фото в своем блоге, нужно:
Шаг 1. Регистрация
1. Перейти в раздел разработчика Instagram в https://www.instagram.com/developer/register/
2. Зарегистрироваться: указать web-сайт, телефон, краткое описание, зачем вам нужен доступ (не влияет на доступ).
3. Выбрать пункт «Зарегистрировать новое приложение»
4. Заполнить форму:
- Имя приложения: произвольное описательное название для вашего приложения (например, «Мой блог» или «My business page»).
- Описание: описание приложения или сервиса (например, «Мой личный блог» или «Приложение покупки билетов»).
- Веб-сайт: Это URL адрес вашего приложения, включая протокол http в начале (например, https://code-inside.com).
- OAuth redirect_url: Если пользователь откажется авторизоваться через приложение, его нужно куда-то перенаправить. В случае приложения для показа ленты в блоге это неважное поле, укажите здесь адрес своего сайта.
5. После отправки формы вам покажут Client ID and the Redirect URL — сохраните их где-нибудь (или не закрывайте это окно), они понадобятся на следующем шаге.
Шаг 2. Авторизация
Скопируйте вот этот URL, и замените YOURCLIENTIDHERE на набор символов, выданный вам в пункте 6 первого шага, а HTTP://YOURREDIRECTURLHERE.COM на ваш домен, на котором будет показываться лента.
https://instagram.com/oauth/authorize/?client_id=YOURCLIENTIDHERE&redirect_uri=HTTP://YOURREDIRECTURLHERE.COM&response_type=token
Вставьте URL в адресную строку браузера и вы попадете на страницу Instragram, где вас спросят, хотите ли вы разрешить доступ. проверьте, что вы все еще в нужной учетной записи Instagram, и смело жмите Authorize , чтобы разрешить получение токена.
Не закрывайте окно браузера, оно вам пригодится для шага 3.
Шаг 3. Получаем Access Token
После авторизации Instagram перенаправил вас на URL, который вы установили в качестве URL Redirect. В конце URL Instagram добавил ваш маркер доступа (длинный набор букв и цифр после слов access_token=). Скопируйте URL куда-нибудь в блокнот:
- В активной адресной строке вашего браузера нажмите CTRL + A на клавиатуре.
- Нажмите CTRL + C .
- Откройте текстовый редактор, например Блокнот или Word, и вставьте URL туда.
Вы должны увидеть что-то вроде:
https://code-inside.com/#access_token=856946666.7338417.ffefasgtasg805784be6ab4f24965e79
Всё, что после знака «=», и есть Access token. Не публикуйте его в открытом доступе, так как он служит своего рода паролем к вашему Instagram аккаунту.
Дополнительные ошибки
Если на этапе авторизации вы вдруг увидели такое сообщение:
{"code": 403, "error_type": "OAuthForbiddenException", "error_message":"Implicit authentication is disabled"}
В разделе разработчика Instagram зайдите в Manage clients, нажмите Manage справа от нужного приложения, и во вкладке Security снимите галочку с «Disable implicit OAuth». Не забудьте сохранить изменения.
Установка в WordPress
К счастью, разработчики плагинов следят за изменениями. Рекомендую обновить Instagram плагины или установить те, которые уже поддерживают новое API. Обновленные плагины позволяют не выполнять Шаг 3, делая его за вас. Например, в Instagram Feed достаточно нажать на соответствующую кнопку, и вы сразу же увидите ваши client ID и Access token в специальной форме. Главное не забыть скопировать их в поля настройки плагина.
Источники: wordpress.org, bobmckay.com