Как правильно установить BuddyPress: руководство по инсталляции и настройке плагина

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

BuddyPress прекрасно работает с огромным количеством бесплатных и платных тем, и BuddyPress-компоненты выигрышно смотрятся также и в адаптивных темах.

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

Если вы хотите узнать больше о BuddyPress, вы можете воспользоваться официальным сайтом BP; также мы предлагаем массу разных статей про BuddyPress.

Установка BuddyPress

Первое, что вы должны будете сделать – это установить плагин BuddyPress. Я буду ставить его в свежую сборку WordPress, однако вы можете установить его и на уже существующий сайт.

В панели администратора WordPress перейдите в раздел Plugins > Add New, и вы увидите BuddyPress в списке доступных плагинов. Щелкните по кнопке Install, после чего Activate, и плагин будет установлен на ваш сайт.

Вы сразу же увидите экран приветствия BuddyPress:

buddypress-welcome-screen

Здесь вы найдете разные ссылки, которые помогут вам установить и настроить ваше сообщество BuddyPress. Начнем с того, что сконфигурируем параметры для BuddyPress:

Конфигурация BuddyPress

Есть три аспекта настройки BuddyPress:

  • Выбор необходимых компонентов
  • Создание страниц
  • Изменение параметров

Начать следует с выбора компонентов, поскольку это повлияет на другие параметры.

Активация BuddyPress компонентов

Чтобы выбрать компоненты, которые вы хотите использовать, либо щелкните по ссылке Set Up Components на экране приветствия, либо перейдите в раздел Settings > BuddyPress и активируйте вкладку Components.

По умолчанию некоторые компоненты уже будут выбраны для вас:

buddypress-components

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

  • Extended Profiles: изменяет пользовательские профили и настраивает доступные поля
  • Account Settings: позволяет пользователям редактировать свой аккаунт.
  • Friend Connections: позволяет пользователям связываться друг с другом.
  • Private Messaging: позволяет пользователям отправлять приватные сообщения
  • Activity Streams: выводит ленту активности на сайте с прямым постингом во фронтэнд, древовидным комментированием, упоминаниями и уведомлениями по email.
  • Notifications: ваши пользователи смогут получать уведомления о последней активности тем способом, который они выберут для себя.
  • User Groups: позволяет создавать пользовательские группы
  • Site Tracking: позволяет отслеживать события на сайте (записи и комментарии)
  • BuddyPress Core: вы не можете отменить этот компонент, без него BuddyPress не будет работать
  • Community Members: опять же, без этого компонента BuddyPress не будет работать.

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

Я выберу все компоненты для данного руководства, поскольку я хочу их все продемонстрировать вам. Вы можете выбрать только те, которые вам требуются. После того, как вы сделаете это, щелкните по кнопке Save Settings.

Настройка страниц

Следующий этап – это настройка страниц, которые будет использовать BuddyPress. Перед тем как переходить к вкладке Pages, вам нужно будет создать несколько страниц: для регистрации и активации.

Примечание: если ваше сообщество является закрытым, и люди не могут регистрировать аккаунты (вы добавляете пользователей вручную), вы можете пропустить этот шаг.

В админке WordPress переходим в раздел Pages > Add New и создаем две страницы, как мы делаем это всегда. Одну назовем Registration, а вторую – Activation (можете присвоить им любые другие названия).

После того, как вы сделаете это, вы увидите все эти страницы в основном списке страниц. BuddyPress уже добавил две другие страницы для вас: Activity и Members. Я удалил стандартную страницу Sample Page, поэтому в данный момент у меня есть четыре страницы.

buddypress-creating-pages

Теперь, когда все страницы созданы, вы можете настроить их для BuddyPress.

buddypress-pages-settings-tab

Переходим в раздел Settings > BuddyPress и щелкаем по вкладке Pages.

Выбираем страницы под каждую функцию:

  • Members – выбираем Members
  • Activity Streams – выбираем Activity
  • User Groups – выбираем Groups
  • Register – выбираем Registration
  • Activate – выбираем Activation

Щелкаем по кнопке Save Settings. BuddyPress будет автоматически использовать эти страницы для вывода соответствующего контента на вашем сайте.

Настраиваем параметры

Теперь, когда вы выбрали компоненты и создали страницы, настало время перейти к настройке параметров BuddyPress .

Щелкаем по вкладке Settings

buddypress-settings

На этой странице есть масса опций, которые вы можете включать или отключать:

  • Main Settings: можно включить/выключить тулбар в самом верху экрана для зарегистрированных пользователей, установить, могут ли пользователи самостоятельно удалять свои аккаунты.
  • Profile Settings: можно разрешить участникам загружать свои собственные изображения для профиля, синхронизировать профили BuddyPress и WordPress.
  • Groups Settings: можно разрешить пользователям создавать группы, установить, могут ли пользователи изменять аватары групп.
  • Activity Settings: можно разрешить комментирование в ленте активности записей блога и форума, автоматически обновлять ленту активности в режиме реального времени.

Выбираем пункты, которые отвечают вашему сайту, после чего щелкаем по кнопке Save Settings. Я выбрал все опции.

Настраиваем параметры WordPress

Теперь, когда BuddyPress настроен, пришла пора настроить параметры WordPress. В дальнейшем мы займемся добавлением навигационного меню и виджетов.

В меню Settings в админке WordPress редактируем следующие параметры:

  • Permalinks: убедитесь в том, что красивые постоянные ссылки включены
  • Reading: делаем так, чтобы домашняя страница была статичной страницей, а именно страницей Activity. Это позволит гарантировать, что, когда пользователи откроют ваш сайт, они будут видеть свежую активность. Я оставлю без изменения опцию Posts page, поскольку на моем сайте нет блога. Если у вас он имеется, выберите подходящую страницу.

buddypress-reading-settings

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

Измените настройки и сохраните изменения.

Установка темы

Теперь вам нужно найти тему для вашего сайта. Если вы работаете с уже существующим сайтом, вы можете пропустить этот шаг (если ваша тема вас устраивает).

Несколько лет назад вы могли бы использовать только совместимую с BuddyPress тему, и если бы вы хотели установить плагин в свою собственную тему, вам бы пришлось добавлять дополнительные шаблоны к ней. Сегодня это делать не нужно. Начиная с версии 1.7, BuddyPress прекрасно работает с любой качественной темой, хотя существуют темы, дизайн и разметка которых не слишком подходит под BP.

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

Переходим в раздел Appearance > Themes и щелкаем по кнопке Add New. Вбиваем spacious в поисковое поле и видим тему:

buddypress-selecting-theme

Щелкаем по Install, после чего Activate, чтобы установить и активировать тему. Если вы хотите настроить тему, вы можете сделать это через параметры темы или через кастомайзер.

Добавляем меню и виджеты для навигации

Далее давайте добавим меню и некоторые виджеты к нему, чтобы улучшить навигацию.

Создание навигационного меню

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

Переходим в раздел Appearance > Menus и щелкаем по ссылке: create a new menu. Даем название меню, ставим галочку напротив Primary Navigation и сохраняем его.

Если вы не обнаружили секцию под названием BuddyPress с левой стороны на сайте, вам нужно будет включить ее, открыв вкладку Screen Options в самом верху экрана и выбрав BuddyPress.

Теперь добавьте страницы BuddyPress и ваши обычные страницы в навигационное меню. Я добавил следующие страницы:

  • Activity (с Messages и Notifications в качестве ссылок второго уровня)
  • Friends
  • Groups
  • Profile (с Settings в качестве ссылки второго уровня)
  • Log Out
  • Log In
  • Registration

Все эти пункты, кроме последнего, взяты из списка BuddyPress слева: ссылка Registration взята из списка Pages. Я сменил текст ссылки для Registration на Join, чтобы было понятнее.

buddypress-navigation-menu

Теперь щелкаем Save Menu для сохранения меню.

Вот как будет выглядеть сайт с новой темой и меню:

buddypress-frontend-no-content

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

Добавление виджетов

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

Добавьте следующие виджеты в область виджетов сайдбара:

  • BuddyPress Log In
  • BuddyPress Sitewide Notices
  • BuddyPress Friends

Добавьте виджет Search к области виджетов хэдера, если ваша тема имеет такую область. Если нет, то можно добавить этот виджет в сайдбар.

Вот как выглядят мои области виджетов:

buddypress-sidebar-header-widgets

Далее я добавлю три специфичных для BuddyPress виджета к первым трем областям виджетов в футере:

  • BuddyPress Who’s Online
  • BuddyPress Recently Active Members
  • BuddyPress Groups

buddypress-footer-widgets

Наконец, добавим текстовый виджет в четвертую область виджетов с некоторым текстом о сообществе и ссылкой на страницу регистрации:

buddypress-text-widget

Теперь мой сайт выглядит так, как на скриншоте ниже:

buddypress-home-page-with-widgets

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

Тестируем сайт с помощью фиктивных данных

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

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

Переходим в раздел Plugins > Add New и устанавливаем BuddyPress Default Data.

Далее идем в раздел Tools > BP Default Data и видим опции плагина:

buddypress-default-data-setup

Опции, указанные здесь, зависят от компонентов BuddyPress, которые установлены на вашем сайте:

  • Import Users: включает фиктивных пользователей для тестирования
  • Import user profile data: добавляет данные профиля для пользователей
  • Create friend connections: создает дружеские связи между пользователями (если включен компонент Friend Connections).
  • Import activity posts: заполняет ленту активности (если включен Activity Streams).
  • Import groups: импортирует группы (если включен User groups).

Щелкните по Import Selected Data, и плагин автоматически импортирует фиктивные данные для вас.

Вот как выглядит мой сайт после заполнения его тестовыми данными:

buddypress-site-with-test-data

Виджеты футера тоже смотрятся лучше после заполнения сайта пользователями и группами.

buddypress-fotoer

Если вы протестировали все страницы и пришли к выводу, что все работает отлично, вы можете удалить тестовые данные, вернувшись к странице плагина и щелкнув по кнопке Clear BuddyPress Data.

Управление сайтом BuddyPress

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

Как только люди начнут вступать в сообщество, вам нужно будет выполнять следующие задачи:

  • Поддерживать свой сайт в актуальном состоянии, включая WordPress, плагин BuddyPress, вашу тему и любые другие установленные плагины.
  • Тестировать сайт после обновления, чтобы не было никаких проблем (сначала лучше протестировать обновление на разрабатываемой версии сайта, после чего уже ставить его на рабочую версию).
  • Делать регулярные бэкапы с помощью плагинов, таких как Snapshot Pro
  • Если необходимо, модерировать сообщество и решать любые жалобы и споры

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

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

Если вы обнаружили, что метаданные, связанные с вашим сообществом, сбились после обновления или восстановления, вы можете использовать страницу BuddyPress Tools для исправления определенных данных:

  • Кол-во друзей для каждого пользователя
  • Кол-во групп для каждого пользователя
  • Общее число участников
  • Восстановление пользовательской «последней активности»

buddypress-tools

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

Также мы рекомендуем сразу ставить удобный плагин чата для WordPress и BuddyPress — ImbaChat. Пользователи ваших сообществ смогут вести групповые и приватные чаты в простом cloud-сервисе, получать онлайн-консультации, передавать файлы и свои геолокации для простого разрешения вопросов (что очень важно, если у вас сообщество основано вокруг отдельного продукта). В чате поддерживаются emoji-смайлы, также вы можете настроить чаты по своему усмотрению. Плагин ImbaChat поддерживает связку с SweetDate и WCFM Marketplace.

Источник: wpmu.org

Блог про WordPress
Комментарии: 27
  1. Игорь

    Здравствуйте, Дмитрий!
    Прошу помочь советом в настройке сайта в части прав пользователей вставлять html-код в записях форумов, описаниях групп и т.д. Можно ли это как-то ограничить с помощью какого-либо плагина? Например, чтобы все размещаемые ими ссылки были с тегом nofollow или вообще был запрет им на вставку html-кода?
    Пытаюсь создать небольшую социальную сеть, но чувствую, что со спамерами придется бороться долго и упорно.

  2. Дмитрий (автор)

    Есть плагин для добавления редактора, в котором ограничено использование тегов. Это для разных публикаций. А вот для вставки кода в другие места (подписи и т.д.) придется писать ручные решения. Таких плагинов мне не попадалось.

    В ленте можно также запретить html теги с помощью такого простого решения:

    http://coffeecupweb.com/disable-html-from-activity-updates-in-buddypress/

    1. Владимир

      Не могу найти какие нужно указать ссылки для того чтобы сделать, как в описании, пункты меню «Profile (с Settings в качестве ссылки второго уровня)», чтобы это были не жёстко привязанные к одному пользователю ссылки, а чтобы это были универсальные пункты меню, и каждый пользователь при нажатии попадал в свой профиль и в свои настройки. Можете подсказать?

      Спасибо!

  3. Андрей

    Дмитрий, подскажите как с этим бороться:
    BuddyPress Default Data v1.1

    Catchable fatal error: Object of class WP_Error could not be converted to string in E:\xampp\htdocs\HomCon\wp-content\plugins\buddypress\bp-xprofile\classes\class-bp-xprofile-profiledata.php on line 67

    Ошибка возникла при импорте.

  4. Дмитрий (автор)

    Возможно, что в wp-config необходимо сменить define(‘DB_CHARSET’, ‘utf8mb4’);
    на
    define(‘DB_CHARSET’, ‘utf8’);

    А так эта проблема может возникать по разным причинам.

  5. Дмитрий (автор)

    Также нужно будет и в phpmyadmin во всех таблицах сменить набор символов (далее команды для mysql, но можно это делать и вручную, если есть доступ к phpmyadmin):

    ALTER TABLE wp_options CONVERT TO CHARACTER SET utf8
    ALTER TABLE wp_blog_versions CONVERT TO CHARACTER SET utf8
    ALTER TABLE wp_blogs CONVERT TO CHARACTER SET utf8
    ALTER TABLE wp_commentmeta CONVERT TO CHARACTER SET utf8
    ALTER TABLE wp_comments CONVERT TO CHARACTER SET utf8
    ALTER TABLE wp_links CONVERT TO CHARACTER SET utf8
    ALTER TABLE wp_postmeta CONVERT TO CHARACTER SET utf8
    ALTER TABLE wp_posts CONVERT TO CHARACTER SET utf8
    ALTER TABLE wp_registration_log CONVERT TO CHARACTER SET utf8
    ALTER TABLE wp_signups CONVERT TO CHARACTER SET utf8
    ALTER TABLE wp_site CONVERT TO CHARACTER SET utf8
    ALTER TABLE wp_sitemeta CONVERT TO CHARACTER SET utf8
    ALTER TABLE wp_term_relationships CONVERT TO CHARACTER SET utf8
    ALTER TABLE wp_term_taxonomy CONVERT TO CHARACTER SET utf8
    ALTER TABLE wp_terms CONVERT TO CHARACTER SET utf8
    ALTER TABLE wp_usermeta CONVERT TO CHARACTER SET utf8
    ALTER TABLE wp_users CONVERT TO CHARACTER SET utf8

  6. Дмитрий (автор)

    Если не поможет utf8, можно пробовать utf8_general_ci.

  7. Дмитрий (автор)

    Еще вариант, что при импорте могут быть проблемы с активированными плагинами, поэтому лучше их деактивировать.

    1. Андрей

      Спасибо, отработал.
      Однозначности нет в причине, т.к. в итоге раскручивал новый сайт с нуля без лишних плагинов, чисто все только по этой странице и с соблюдением utf8_general_ci.

  8. Владимир

    Подскажите пожалуйста, какие нужно указать ссылки для того чтобы сделать, как в описании, пункты меню «Profile (с Settings в качестве ссылки второго уровня)», чтобы это были не жёстко привязанные к одному пользователю ссылки, а чтобы это были универсальные пункты меню, и каждый пользователь при нажатии попадал в свой профиль и в свои настройки?

    Спасибо!

    1. Александр

      Владимир, нашли ответ на свой вопрос? Меня он тоже интересует

  9. Андрей

    Добрый день или вечер! Подскажите, не приходит письмо с подтверждением регистрации. Что делать?

    1. Дмитрий (автор)

      Проверьте, правильно ли задали адрес. Проверьте папку со спамом, бывает что туда улетает. Если так и не пришло, попробуйте задать другой почтовый адрес.

  10. Артём

    Подскажите пожалуйста в чем может быть проблема или ошибка ?
    Поставил buddypress, создал(зарегистрировал) пару пользователей пробных , но на какой не зашел бы , то не видно тех пользователей что я создал в возможных для добавления в «друзья». Не могу ни как решить проблему.

  11. Игорь

    Дмитрий, благодаря вашему блогу я создал соц сеть, но мне бы хотелось ещё знать как правильно настроить SEO. У вас есть эта информация? Если есть скиньте ссылку пожалуйста!

  12. Антон

    Здравствуйте!
    Такая проблема: не так давно заметил что в ленте активности сайта на BP пропала кнопка «Отправить» (отправка поста в саму ленту активности зарегистрированными участниками). Раньше помню была она (в феврале-марте 2017 г.) но потом пропала, а окно для ввода контента осталось… До конца понять не могу что могло привести к такой ошибке((((
    Пытался вспомнить какие неверные действия я совершал, но не могу хоть убей вспомнить.

    Кто-нибудь сталкивался с подобным? Прошу пожалуйста помогите или подскажите где ковырять надо?

  13. Игорь

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

    1. Дмитрий (автор)

      Есть другие пользователи-админы? Если нет, то создаете другого админа, и с него уже выводите из спама первого админа в разделе с пользователями в админке.

      1. Дмитрий (автор)

        Также, как вариант, можете попробовать создать админа через MySQL. Тут подробно описано, как сделать:

        http://www.wpbeginner.com/wp-tutorials/how-to-add-an-admin-user-to-the-wordpress-database-via-mysql/

  14. Игорь

    Да создал я других администраторов, они автоматически тоже спамерами стали, не сделав ни одного действия! Я захожу с первого администратора вывести каждого из новых администраторов, ни чего не выходит, то же самое пытаюсь делать с каждого администратора, вывести других, но ни чего не выходит! Уже пробовал даже файлы сайта удалять и базу данных, но после установки вордпресс и бадди пресс, проблема воспроизводится вновь

    1. Дмитрий (автор)

      Пробуйте отключать плагины. Возможно, проблема с каким-то одним плагином, который отвечает за безопасность или за кэширование.

  15. Эрик

    Здравствуйте! Я писал сюда некоторое время назад. Писал о том, что перешёл на данный плагин с recall и хотелось бы узнать, есть ли плагин, позволяющий пользователям добавлять новые главы к уже написанным записям. Вы тогда скинули ссылку на какой-то плагин к BP, сказали, что в настройках придется смотреть и копаться. Я потерял ссылку на ту страницу, где задал вам вопрос и не смог ее найти вручную. Не могли бы повторить название того расширения для BP или прислать ссылку, где тогда дали ответ? Спасибо заранее

  16. Никита

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

    Подскажите пожалуйста, как можно исправить ошибку и сделать корректную отправку email сразу после регистрации

    1. Дмитрий (автор)

      У вас какая версия BuddyPress используется? Судя по всему, подобная ошибка была в версии 2.9.3 и была исправлена в более поздних. Советую еще тут почитать: https://buddypress.org/support/topic/buddypress-new-user-activation-emails-resends-not-working/

      1. Никита

        Спасибо за ответ.Моя версия плагина 5.1.2. Но все равно проблема есть. Возможно есть еще причины?

        1. Дмитрий (автор)

          Попробуйте поставить плагин https://wordpress.org/plugins/wp-mail-smtp/ для отправки писем.

          Его рекомендовали здесь: https://buddypress.org/support/topic/activation-emails-are-not-being-sent/

          Если через него не получится, то тогда придется искать еще обходные пути. Эта проблема достаточно популярна, судя по веткам обсуждений.
          https://buddypress.org/support/topic/can-someone-please-share-a-copy-of-the-default-activation-emails/
          https://buddypress.org/support/topic/activation-emails-are-not-being-sent/

          Там же в самом конце темы советуют пробовать repair email в BuddyPress -> Tools.

          В общем, тут надо тестировать и смотреть, что именно у вас сработает.

Добавить комментарий

Получать новые комментарии по электронной почте.