How To Build A Community Website With BuddyPress

buddies dogs

BuddyPress provides a great place to meet and become buddies

  • Do you want to build an online community similar to Facebook except on your own domain?
  • Do you want members to register and have their details automatically remembered?
  • Do you want members to interact with each other in a private or public setting?

Recently I was asked to build a social networking (community) website for an organization so new members could register, interact between each other and also create their own groups based on their interests.

Although WordPress in a great content management system (CMS) which enables anyone to register and remember their login details, it doesn’t contain social networking features by default. The solution is to install and configure the BuddyPress Plugin.

What Can BuddyPress Do For You?

1. Extend User Profiles

Instead of just asking for name and email when registering new members, extended user profiles enables you to create additional fields such as telephone, address, website, etc. This profile can be a publicly accessible profile if needed.

2. Modify Member’s Account Settings

Members can easily modify their account and notification settings within their profiles. They can also view a list of all members who have registered, including time, latest status update and latest post (if the blogging feature is included). The search feature allows them quickly search for specific members within the site.

2. Connect With Friends

Make connections between friends by accepting friendship requests or finding new friends with similar interests. You can also track activities of friends or friends of friends. BuddyPress gives you the ability to send and receive private emails from members with a private messaging panel. Members get notified of new messages through email notifications if enabled.

3. Display Activity Streams

This shows all the activities throughout the site ie RSS Feed, updates, post, comments, new groups (if enabled), group memberships, friendships, new members, etc.

4. Create Interest Groups

Members can create groups based upon their topic of interest. To create a group it first has to be enabled by Admin or SuperAdmin. The Group Administrator can invite new members to the group and encourage them to interact with each other.

Click here for more info on creating Groups

5. Create Multiple WordPress Blogs

Instead of members creating personal blogs outside of your community site you can build them within BuddyPress. This enables you to create a network of blogs where members can track new posts and comments in the sitewide activity stream.

6. Create Discussion Forums

The default installation of BuddyPress doesn’t include forums however if you install the bbPress plugin it allows you to create Sitewide and/or Group Forums. Members can create new topics that can be posted to any of the public or group forums.

7. Extend Capabilities With Popular Plugins

Plugins enhance user experience and boost the possibilities of social connectivity and sharing within groups and community. For example one of the most popular plugins is “The Events Calendar” which enables you to create an online calendar for upcoming events. It includes Google Map integration and displays all the details of the event on it’s own page (when you click on the live link in the calendar).

How To Build A Community Website in 12 Steps

1. Define your purpose and goals

Many website owners build a site without clarifying it’s true purpose and goals. For example the purpose of a church website could be to increase membership, keep track of upcoming events and accept online donations.

2. Requirements (before installing WordPress)

Check that your web host includes these features:

* Linux servers
* PHP 5.2.4 or better
* MySQL 5.0 or better
* Apache Module mod_rewrite enabled for “pretty permalinks”
* MySQL Database(s)


  • WordPress should be installed manually via FTP.
  • Don’t use web hosting scripts such as Fantastico, Softalicious for installation.
  • BuddyPress does not work when you install WordPress in its own directory (ie
  • Instead place it in the root directory (I learned the hardway)
  • *Use lowercase letters when naming a subdirectory for WordPress/BuddyPress installations.

3. Install MySQL Database

A mySQL database has to be installed for WordPress to work. The purpose of the database is to store and manage all your content which is separate from your site’s design.

Here are the steps for installing the Database via cpanel:

* Login to cpanel
* Click mySQL databases
* Create a database(give it a name and make a note of it)
* Create a database user name
* Create a password
* Add user to database
* Check all permissions

That’s it..your database has been created

4. Install WordPress

WordPress is the best content management system (CMS) for creating a community website because it enables you to easily maintain and update the content from a backend administration panel. The functionality can easily be expanded through the use of multiple plugins.

Here are the steps for installing WordPress Files

* Download the latest version of WordPress from to your desktop
* Unzip the file
* Open wp-config-sample.php
* Replace database name with the one created previously
* Replace database user name
* Insert your password
* Rename wp-config-sample.php to wp-config.php
* Upload all WordPress files (including wp-config.php) via FTP to your server
* Visit and follow the instructions on the screen to complete your installation.

That’s it..WordPress is now installed!

5. WordPress Configuration

  • Set up “Pretty Permalinks” via Settings > Pemalinks > Post name > Save Changes
    This will create readable URLs containing keywords for your posts and pages instead of a bunch of letters and numbers.
  • Enable registration so anyone can register as a new member.
  • Go to Settings > General > Membership > Anyone can register
  • Next to User Default select members role ie Contributor, Editor, Author.
  • Save changes

Read “My Top 12 Free WordPress Plugins Every User Needs”
8 Steps To Protect Your WordPress Website From Hackers

6. BuddyPress Plugin Installation

  • Install the BuddyPress Plugin > Dashboard > Plugins > Add New > Search and install ‘BuddyPress’ > Activate plugin
  • Install Default BuddyPress Theme > Dashboard > Appearance > Themes > BuddyPress Default > Save and Activate

7. Configure BuddyPress Components

buddypress components

Each component has its own unique purpose. Your community may not need to utilize every one (ie discussion forums, user groups).

Here are the available components:

Extended Profiles – customize your community with fully editable profile fields that allow your users to describe themselves.

Account Settings
– allow users to modify their account and notification settings directly from within their profiles.

Friend Connections
– let sers make connections so they can track the activity of others and focus on the people they care about the most.

Private Messaging
– allow users to talk to each other directly and in private. Not just limited to one-on-one discussions, messages can be sent between any number of members.

Activity Streams – global, personal, and group activity streams with threaded commenting, direct posting, favoriting and mentions, all with full RSS feed and email notification support.

User Groups – groups allow your users to organize themselves into specific public, private or hidden sections with separate activity streams and member listings.

Discussion Forums -full-powered discussion forums built directly into groups allow in-depth conversations. NOTE: This requires the installation of the bbpress plugin.

Here are the steps to set-up BuddyPress components:

  • Dashboard > BuddyPress > Components
  • Enable all components by checking all the boxes
  • Save Settings

8. Configure BuddyPress Pages

buddypress pages

BuddyPress components only work when you first create a page for each component. Under the heading “Directories” the pages are already created by default for activity streams, user groups and members.

Let’s say you want “Register” to be accessed on a page called “Registration”. You simply create a blank page titled “Registration” first (Pages > Add New > Save Settings) then select the page listed in the drop-down box located next to “Register”. .

Repeat for the heading “Activate”

9. Configure BuddyPress Settings

buddypress settings

Check all the boxes which apply to your site under these headings then save your settings:

  • Main Settings
  • Profile Settings
  • Groups Settings (this is the only setting I didn’t enable because I didn’t need to create groups).
  • Activity Settings

Note: Don’t check Group Settings if you don’t wish to create groups for all users.

10. Set-up Profile Fields

profile fields

Every member that registers receives their own profile page. You can create additional profile fields (besides name and email) that is relevant to the purpose of your social network (ie include address, tel no, website address, favorite hobby, etc).

Note: Any fields in the first group will appear on the signup page.

11. Create a customized navigation menu

buddypress menu

The default BuddyPress theme supports one menu however you can create a customized menu for your BuddyPress site by giving it a title and dragging and dropping pages into it.

  • Go to Dashboard > Appearance > Menus.
  • Assign the menu you just created as the Primary Navigation for your site.
  • Click save and refresh your site to see your new custom menu in place.
  • Whenever you want to add a new page (link) to the navigation menu, simply create the page first them drag and drop it into the menu.

12. Install The Events Calendar Plugin

buddypress calendar
Click to enlarge

This plugin enables you to create and manage events with ease. It displays all the details of your events (including Google Maps) on a dedicated page after you’ve clicked the live link on the calendar).

Additional themes and plugins can be acquired by becoming
a member of wpmudev

Examples of BuddyPress Websites

10 of the Latest and Greatest Inspirational BuddyPress Sites
13 Shining Examples of BuddyPress in the Wild
BuddyPress Showcase
Best sites Powered by WordPress & BuddyPress
Creating Community with BuddyPress
The Ultimate Beginners Guide To BuddyPress


Consider purchasing one of the professional templates from Studiopress (instead of using the BuddyPress default template) then using the Genesis Connect Plugin for smooth integration.

Genesis Framework for WordPress

To get more info on BuddyPress visit the official site at: or visit the BuddyPress Developer Site


  1. Howdy! Would you mind if I share your blog with my facebook
    group? There’s a lot of people that I think would really enjoy your content. Please let me know. Thanks

  2. Hello, l am about to install my first buddypress site and l show your video on youtube.
    l am a wordpress developer and SEO guy from Greece.
    l agree with you about the manual installations of everything and l appreciate your advice.


Speak Your Mind