Drupal и Facebook: Учебник по интеграции и входу в систему

  1. Сделайте это проще для пользователей Drupal: войдите через Facebook
  2. Аутентификация пользователя Drupal через Facebook с использованием модуля Simple FB Connect
  3. Поддержка Simple FB Connect и Drupal 8
  4. Настройка простого модуля FB Connect для входа в Drupal Facebook
  5. Создайте приложение Facebook для поддержки вашего модуля входа в Drupal Facebook
  6. Настройте свой веб-сайт Drupal для принятия входа в Facebook
  7. Войдите на свой сайт Drupal с помощью учетной записи Facebook
  8. Альтернативные модули входа в Drupal Facebook
  9. Модуль Drupal для Facebook OAuth (FBOAuth)
  10. Несколько учетных записей социальных сетей с помощью Hybrid Auth Social Login или модулей OAuth Connector
  11. Используйте модуль Hybrid Auth Social Login для мульти-логина Drupal
  12. Улучшение взаимодействия с пользователем с помощью сторонних логинов Drupal, таких как Facebook

Прошлой недели учебник по комментариям Drupal Facebook интеграция приводит наш блог к ​​записи трафика и упоминания о TheWeeklyDrop среди других мест. Владельцы веб-сайтов и менеджеры Drupal часто требуют интеграции Facebook со своей платформой. Сегодня мы собираемся проработать еще одну из самых востребованных потребностей интеграции с Facebook: войти и подключиться .

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

Сделайте это проще для пользователей Drupal: войдите через Facebook

Распространенным решением этой проблемы в последние годы является предложение пользователю войти в систему через учетную запись на стороннем веб-сайте. Обычно это учетная запись в социальных сетях: Twitter, Google+, Facebook и т. Д. У большинства пользователей Интернета есть одна из этих учетных записей, и среди них у Facebook самая большая база пользователей. Разрешение пользователям входить через свою учетную запись Facebook часто является первой сторонней веб-страницей, которую владельцы или менеджеры системы регистрации хотят интегрировать со своими веб-сайтами Drupal.

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

Система управления контентом Drupal (CMS) предоставляет несколько методов для аутентификации пользователей Drupal с помощью учетных записей Facebook через добавленные модули. Давайте разберемся с тем, что я считаю лучшим кандидатом для настройки простого входа в Drupal на Facebook: модуль Simple FB Connect .

Аутентификация пользователя Drupal через Facebook с использованием модуля Simple FB Connect

Чтобы интегрировать простую систему входа в систему и аутентификации Facebook для Drupal, я выбрал этот учебник с соответствующим названием Simple FB Connect. Модуль работает при условии, что все, что вы хотите с ним сделать, - это позволить пользователям входить в систему с помощью своих учетных записей Facebook: ни больше, ни меньше. Этот модуль имеет очень мало опций конфигурации и, конечно, не так глубоко интегрируется с Facebook и Drupal, как некоторые другие модули, связанные с логином. Здесь нет способа получить дополнительную информацию об учетной записи из Facebook и добавить их данные в пользовательские поля пользователя в Drupal.

Модуль Simple FB Connect просто позволяет пользователям щелкать ссылку для входа в систему, которая синхронизирует их данные Facebook (после аутентификации) с новой учетной записью пользователя Drupal. Их адрес электронной почты Facebook и фотография профиля будут добавлены в их учетную запись пользователя Drupal. Модуль работает с опциями настроек основной учетной записи Drupal, позволяя пользователям создавать учетные записи с дополнительной электронной почтой для подтверждения или без нее, а также с учетной записью администратора. Отключение второго уровня проверки означает, что пользователи могут мгновенно войти в систему со своей учетной записью Facebook и получить доступ к вашему сайту.

Поддержка Simple FB Connect и Drupal 8

Обновлено 7 июля 2017 г.

Одна из ключевых причин, по которой я использую модуль Simple FB Connect в этом руководстве, заключается в том, что он хорошо поддерживается последними обновлениями и растущей статистикой использования. Кроме того, модуль поддерживает Drupal 8 и имеет полный доступный выпуск. Позже я расскажу об альтернативных модулях для аутентификации в Facebook.

Процесс, описанный ниже, предназначен для Drupal 7, но очень похож на выпуск Drupal 8 для Simple FB Connect. Основное различие заключается в процессе установки, который зависит от Композитор , наш первый учебник по Drupal 8 вращается вокруг установки Simple FB Connect и помогает обрисовать конкретные детали.

Настройка простого модуля FB Connect для входа в Drupal Facebook

Давайте пройдемся по шагам интеграции модуля Simple FB Connect с вашим веб-сайтом Drupal, чтобы разрешить аутентификацию учетной записи пользователя Facebook. Сначала нам нужно скачать наш модуль и связанные с ним зависимости.

  1. Скачать Простой FB Connect модуль со своей страницы проекта Drupal
    Примечание : я бы предложил использовать версию 7.x-2.x, которая была в бета-версии на момент написания статьи; ветка 2.x объединяет последнюю версию API Facebook Connect
  2. Загрузите и включите зависимости (необходимые для версий Simple FB Connect 7.x-2.x +):
    1. X автозагрузка модуль со своей страницы проекта Drupal
    2. API библиотек модуль со своей страницы проекта Drupal
    3. Facebook PHP SDK версия 4.0.x Библиотека PHP со страницы проекта Github
      Примечание : поместите библиотеку в папку " sites / all / library / facebook-php-sdk-v4 "; Я использую версию 4.0.23 в этом уроке

После включения модуля и зависимостей перейдите на страницу конфигурации ( / admin / config / people / simple-fb-connectc t) для Simple FB Connect.

Фу, для модуля с «Simple» в заголовке, он, безусловно, имеет много зависимостей! Интеграция со сторонними сервисами редко бывает простой. Может быть, пришло время выпить, еще есть чем заняться.

На странице конфигурации вы увидите несколько пустых полей, которые обязательны для заполнения (и я заполнил скриншот выше). Вам понадобится идентификатор приложения Facebook и секрет приложения . Вы также захотите настроить URL-адрес Facebook Connect в целях безопасности. Поле должно быть предварительно заполнено на странице конфигурации URL вашего сайта. Мы будем использовать это позже. Как подсказывает текст справки, вам нужно создать приложение Facebook, чтобы получить эти данные.

Мне нужно создать целое приложение для Facebook, чтобы настроить вход в Drupal для пользователей Facebook ?!

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

Создайте приложение Facebook для поддержки вашего модуля входа в Drupal Facebook

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

Нажмите «Создать идентификатор приложения», и вам будет предложен секретный вопрос и / или процесс проверки Facebook. Вам может потребоваться добавить кредитную карту или пройти процедуру проверки мобильного телефона, чтобы доказать Facebook, что вы настоящий человек. В качестве дополнительного шага, я имел удовольствие доказать свою человечность, нажав на фотографии фейерверков. Я полагаю, что День независимости в США проходит менее чем через месяц, но я отвлекся.

На следующей целевой странице будет отображаться панель мониторинга, содержащая ваш идентификатор приложения и секрет приложения (скрытый). Он также покажет версию API вашего приложения, что может быть полезно, чтобы убедиться, что ваш модуль совместим с приложением Facebook.

Он также покажет версию API вашего приложения, что может быть полезно, чтобы убедиться, что ваш модуль совместим с приложением Facebook

Покажите секрет приложения и вставьте эти две точки данных в соответствующие поля страницы конфигурации Simple FB Connect.

Затем нажмите «Настройки» в левой панели меню приложения Facebook. На странице настроек добавьте новую платформу сайта .

После добавления новой платформы сайта появятся два поля:

  1. адрес сайта
  2. URL мобильного сайта

Заполните оба этих поля URL-адресом из данных поля «Connect url» страницы конфигурации модуля Simple FB Connect, как я делал на скриншоте. Сохраните ваши изменения.

Настройте свой веб-сайт Drupal для принятия входа в Facebook

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

  1. Перейдите на страницу настроек учетной записи Drupal ( / admin / config / people / accounts ).
  2. В разделе Регистрация и отмена → «Кто может зарегистрировать учетные записи?», Отметьте опцию «Посетители».
  3. Нажмите «Сохранить конфигурацию» внизу страницы.

Нажмите «Сохранить конфигурацию» внизу страницы

Это позволит любому анонимному посетителю создать учетную запись на вашем сайте Drupal без согласия администратора. Опция «Требовать подтверждение электронной почты» не заставит пользователей Facebook также авторизовать электронную почту, поэтому вы можете оставить этот флажок, чтобы не допускать автоматическую регистрацию спам-ботов (надеюсь, вы делаете несколько других вещей, чтобы спаммеры не пускали , тоже).

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

Войдите на свой сайт Drupal с помощью учетной записи Facebook

Теперь, когда все компоненты готовы, проверьте ваш процесс входа в Facebook с вашими учетными данными. Выйдите из своей учетной записи администратора и посетите страницу входа в Drupal (/ user). Вы должны увидеть новую вкладку или ссылку «Зарегистрироваться / Войти через FB».

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

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

Если все идет хорошо, вы должны увидеть всплывающее окно на Facebook, запрашивающее авторизацию для привязки вашей учетной записи к приложению Facebook, которое вы создали ранее

Нажмите «ОК», и вы будете перенаправлены обратно на страницу пользователя вашего веб-сайта Drupal, войдя в систему. Имя пользователя должно быть заполнено вашим именем в Facebook, надлежащим образом синхронизированным адресом электронной почты и вашей фотографией, отображаемой в качестве фотографии профиля Drupal.

Имя пользователя должно быть заполнено вашим именем в Facebook, надлежащим образом синхронизированным адресом электронной почты и вашей фотографией, отображаемой в качестве фотографии профиля Drupal

Хотя модуль называется «Простое соединение с FB», существует много шагов для настройки системы аутентификации и входа в систему Facebook в целом. Вам нужно будет не только настроить модуль и связанные с ним зависимости, но и приложение Facebook и настройки учетной записи вашего сайта.

Сделав это, вы сможете предложить своим пользователям удобный сервис входа в систему и создания учетной записи для тех, кто хочет использовать данные своей учетной записи Facebook для входа в систему. Это может значительно улучшить взаимодействие с пользователем, в отличие от необходимости создавать еще один профиль пользователя на еще одном веб-сайте.

Альтернативные модули входа в Drupal Facebook

Модуль Simple FB Connect Drupal - это один из самых простых, модернизированных модулей интеграции Drupal и Facebook. Есть, конечно, несколько других вариантов:

  1. Facebook OAuth (FBOAuth)
  2. Facebook Connect
  3. Соединитель OAuth
  4. Hybrid Auth Social Login

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

Модуль Drupal для Facebook OAuth (FBOAuth)

Этот модуль заслуживает особого внимания. Во многих отношениях FBOAuth предлагает более простой процесс установки, чем Simple FB Connect. У него меньше зависимостей (ну нет). Он даже будет работать с несколькими модулями, относящимися к профилю, так что вы сможете дополнительно интегрировать поля пользовательских данных Facebook с вашими собственными пользовательскими полями данных в Drupal.

Процесс установки FBOAuth очень похож на Simple FB Connect: установите модуль, настройте приложение Facebook, скопируйте учетные данные приложения Facebook в конфигурацию модуля, и вы почти готовы к работе. Все, что вам действительно нужно сделать, - это установить местоположение фактической кнопки входа в систему, которая может быть блоком или каким-то PHP-кодом для печати кнопки в файле шаблона. Вот скриншот того, как я настраиваю FBOAuth на том же веб-сайте после отключения модуля Simple FB Connect и добавления блока входа FBOAuth в область содержимого:

Вот скриншот того, как я настраиваю FBOAuth на том же веб-сайте после отключения модуля Simple FB Connect и добавления блока входа FBOAuth в область содержимого:

Обратите внимание на синюю кнопку «F Connect» под кнопкой «Войти». Модуль FBOAuth довольно прост в настройке, особенно после того, как вы уже прошли процесс создания приложения Facebook. Он может лучше соответствовать вашему варианту использования, если вам нужно интегрировать несколько пользовательских полей с данными Facebook (возможно, импортировать данные пользователя Facebook «About» в пользовательское поле «Bio» для пользователей Drupal).

Основная причина, по которой я не основывал этот урок на FBOAuth, заключается в том, что Simple FB Connect, просто предлагая процесс входа в Facebook на Drupal, похоже, стремится к будущей совместимости. У FBOAuth еще нет плана поддержки Drupal 8. Кроме того, хотя процесс установки немного усложняется, Simple FB Connect опирается на PHP-библиотеку Facebook. Надеюсь, это означает, что команда модуля сможет идти в ногу с изменениями API Facebook. Это было очевидно из истории их релизов, и, по-видимому, команда продолжит идти в ногу со временем.

Тем не менее, модуль FBOAuth поддерживается очень известной компанией, ориентированной на Drupal, и этот модуль существует уже некоторое время. Он имеет дополнительные функции и быстро настраивается. Не бойтесь дать ему повод, если он лучше соответствует вашему варианту использования. Переход к производственным площадкам Drupal 8, вероятно, для большинства веб-сайтов Drupal еще долгие годы.

Несколько учетных записей социальных сетей с помощью Hybrid Auth Social Login или модулей OAuth Connector

Если вы просто хотите добавить одну дополнительную систему входа в систему (возможно, Twitter), вам все равно лучше всего придерживаться Simple FB Connect или FBOAuth плюс связанный модуль входа в Twitter. Помимо этого, рассмотрим более многоцелевой инструмент. Если вы планируете интегрировать другие платформы социальных сетей в качестве дополнительных параметров входа в систему, вероятно, лучше использовать модуль, не ориентированный на Facebook.

В последних проектах я несколько раз настраивал OAuth Connector и могу сказать, что это сложный процесс. Это работает, и это гибко, чтобы разрешить вход в систему с несколькими социальными сетями, которые поддерживают OAuth, но это действительно может быть трудной настройкой учетных данных и точек интеграции для каждой платформы. OAuth Connector - лучший выбор для более гибкой системы входа в систему или для платформ, которые не поддерживаются другими модулями.

Используйте модуль Hybrid Auth Social Login для мульти-логина Drupal

Используйте модуль Hybrid Auth Social Login для мульти-логина Drupal

Для множественных настроек входа в социальную сеть Drupal я использую модуль Hybrid Auth Social Login. Команда разработчиков проделала потрясающую работу по поддержанию актуальности всех интеграций с логинами в социальных сетях, так как API менялись с годами. У нас есть сайты, которые годами использовали Hybrid Auth без проблем, даже когда платформы обновляют и не поддерживают версии API.

Если есть интерес, я могу сделать учебник по модулю Hybrid Auth Social Login в будущем. Я думаю, что это отличный инструмент. Пинг нам в твиттере если тебе это нравится

Улучшение взаимодействия с пользователем с помощью сторонних логинов Drupal, таких как Facebook

Помните, что основная причина, по которой вы интегрируете любую систему входа в социальные сети, заключается в улучшении взаимодействия с пользователями. Имейте это в виду, когда вы рассматриваете, как настроить соответствующие пользовательские разрешения и рабочий процесс. Если вы пытаетесь создать сообщество вокруг своего веб-сайта или приложения Drupal, держите это в авангарде своих решений. Немного больше усилий по обслуживанию систем и предотвращению спама с вашей стороны может иметь большое значение для предоставления пользователям быстрого входа в систему, которого они ожидают.

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

  1. Drupal Facebook Комментарии
  2. Drupal Facebook Войти
  3. Drupal Facebook Feed
  4. Drupal Facebook Нравится

Если вы заинтересованы в полной интеграции Facebook с вашей стратегией сайта Drupal через профессиональные услуги, протянуть руку , Считаете этот урок полезным? Не забудьте поделиться!

Мне нужно создать целое приложение для Facebook, чтобы настроить вход в Drupal для пользователей Facebook ?