84
Community with BuddyPress Ptah Dunbar & David Bisset WordCamp Orlando - December 3rd, 2011

Community With BuddyPress (WordCamp Orlando 2011)

Embed Size (px)

Citation preview

Page 1: Community With BuddyPress (WordCamp Orlando 2011)

Community with BuddyPressPtah Dunbar & David BissetWordCamp Orlando - December 3rd, 2011

Page 2: Community With BuddyPress (WordCamp Orlando 2011)

What We Will Be CoveringWhat Is BuddyPress?Typical Applications of BPMaximizing The Potential of BPSites That “Think Outside Of The Box” Plugins And Themes To Help You Think “Outside Of The Box”

Page 3: Community With BuddyPress (WordCamp Orlando 2011)

Who Are We?“The Harold and Kumar

of WordPress”

Page 4: Community With BuddyPress (WordCamp Orlando 2011)

LIVING IN WONDERFUL SOUTH FLORIDA

Page 5: Community With BuddyPress (WordCamp Orlando 2011)

About Ptah Dunbar, the Harold:

• Still Alive : )

• Web developer for 6 years

• WordPress, BuddyPress, bbPress Core Contributor

• Co-organizer of WordCamp Miami

• Co-organizer of WordPress Monthly Meetups

• @ptahdunbar

Page 6: Community With BuddyPress (WordCamp Orlando 2011)

FATHER OF 3 BEAUTIFUL DAUGHTERS

Page 7: Community With BuddyPress (WordCamp Orlando 2011)

HUSBAND TO A WONDERFUL WIFE(WOMAN PICTURED MIGHT NOT BE ACTUAL WIFE)

Page 8: Community With BuddyPress (WordCamp Orlando 2011)

About David Bisset, the Kumar:• Freelance web developer for over 8 years

• Worked with WordPress for over 3 years (since version 1.5)

• Played and worked w/ BuddyPress since pre 1.0 beta.

• Co-organizer of WordCamp Miami

• @dimensionmedia / about.me/davidbisset

Page 9: Community With BuddyPress (WordCamp Orlando 2011)

What Is BuddyPress?In a nutshell: “Social Networking In a Box”

Page 10: Community With BuddyPress (WordCamp Orlando 2011)

What Is BuddyPress?In a nutshell: “Social Networking In a Box”Set Of Open Source Plugins For WordPress

Page 11: Community With BuddyPress (WordCamp Orlando 2011)

What Is BuddyPress?In a nutshell: “Social Networking In a Box”Set Of Open Source Plugins For WordPress

Conceived in 2008, 1st Release in May 2009

Page 12: Community With BuddyPress (WordCamp Orlando 2011)

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.

Page 13: Community With BuddyPress (WordCamp Orlando 2011)

ExtendedProfilesFully editable profile fields allow you to define the fields users can fill in to describe themselves. Tailor profile fields to suit your audience.

Page 14: Community With BuddyPress (WordCamp Orlando 2011)

FriendingLet your users make connections so they can track the activity of others, or filter on only those users they care about the most.

Page 15: Community With BuddyPress (WordCamp Orlando 2011)

Private Messaging

Private messaging will allow your users to talk to each other directly, and in private. Not just limited to one on one discussions, your users can send messages to multiple recipients.

Page 16: Community With BuddyPress (WordCamp Orlando 2011)

Blogging Start a blog built on the best blogging software in the world. Even allow each of your users to start their own full powered WordPress blog. Track new posts and comments across your site.

Page 17: Community With BuddyPress (WordCamp Orlando 2011)

GroupsPowerful public, private or hidden groups allow your users to break the discussion down into specific topics. Extend groups with your own custom features using the group extension API.

Page 18: Community With BuddyPress (WordCamp Orlando 2011)

ForumsFull powered discussion forums built directly into groups allow for more conventional in-depth conversations.

Page 19: Community With BuddyPress (WordCamp Orlando 2011)

Pick and chooseIn a nutshell: “Social Networking In a Box”Set Of Open Source Plugins For WordPress

Conceived in 2008, 1st Release in May 2009

Page 20: Community With BuddyPress (WordCamp Orlando 2011)

What Does BuddyPress Look Like By Default?

Page 21: Community With BuddyPress (WordCamp Orlando 2011)

DEFAULT BUDDYPRESS THEMEWORDPRESS 3.2.1 / BUDDYPRESS 1.5.1

Page 22: Community With BuddyPress (WordCamp Orlando 2011)

DEFAULT BUDDYPRESS THEMEWORDPRESS 3.2.1 / BUDDYPRESS 1.5.1

Page 23: Community With BuddyPress (WordCamp Orlando 2011)

DEFAULT BUDDYPRESS THEMEWORDPRESS 3.2.1 / BUDDYPRESS 1.5.1

Page 24: Community With BuddyPress (WordCamp Orlando 2011)

DEFAULT BUDDYPRESS THEMEWORDPRESS 3.2.1 / BUDDYPRESS 1.5.1

Page 25: Community With BuddyPress (WordCamp Orlando 2011)

What Can You Use BuddyPress For?

Obvious Solution:A niche social network on your site for a

particular topic or business (cars, art, football, underwater basket weaving, etc.)

Page 26: Community With BuddyPress (WordCamp Orlando 2011)

What Can You Use BuddyPress For?Solution Gaining Popularity:

A niche social network for your local organization, church, school,

meetup group, etc.

Page 27: Community With BuddyPress (WordCamp Orlando 2011)

MY.TELEGRAPH.CO.UKEXAMPLE BUDDYPRESS SITE

Page 28: Community With BuddyPress (WordCamp Orlando 2011)

MY.TELEGRAPH.CO.UKEXAMPLE BUDDYPRESS SITE

Page 29: Community With BuddyPress (WordCamp Orlando 2011)

Why Use BuddyPress?Open Source – Like WordPress, BuddyPress is an open-source content management system. It’s free, but it’a also actively maintained and you can assist with the development.

Control your own data – You and only you will be in control of your member data and code. There are no restrictions placed on what you can access. No worries about service changes (Ning, cough).

Control - Sell and display advertising or keep your site ad free. Your members will never receive unsolicited emails. All communication is in your hands

Customization - Tailor the features and functionality to your community’s needs with BuddyPress-specific plugins and the vast WordPress plugin repository.

Page 30: Community With BuddyPress (WordCamp Orlando 2011)

Is There More BuddyPress Can Do?

Let’s Take A Look At Examples At Sites That Thought “Outside The Box” When It Came To

BuddyPress

Page 31: Community With BuddyPress (WordCamp Orlando 2011)

PEERBACKERS.COMCROWDFUNDING (ALA KICKSTARTER.COM) USING BUDDYPRESS

Page 32: Community With BuddyPress (WordCamp Orlando 2011)

PROJECTS PAGEMODIFICATIONS TO BUDDYPRESS GROUP API

Page 33: Community With BuddyPress (WordCamp Orlando 2011)

SUBMIT PROJECT PAGEMODIFICATIONS TO BUDDYPRESS CREATE GROUP PAGE

Page 34: Community With BuddyPress (WordCamp Orlando 2011)

What Can We Learn From Peerbackers.com?

Page 35: Community With BuddyPress (WordCamp Orlando 2011)

What Can We Learn From Peerbackers.com?

Groups Can Be Anything If You Think “Outside The Box”

Page 36: Community With BuddyPress (WordCamp Orlando 2011)

What Can We Learn From Peerbackers.com?

Groups Can Be Anything If You Think “Outside The Box”Groups Can Be Projects, Educational Courses, Seminars,

Sports Teams, etc.

Page 37: Community With BuddyPress (WordCamp Orlando 2011)

What Can We Learn From Peerbackers.com?

Groups Can Be Anything If You Think “Outside The Box”Groups Can Be Projects, Educational Courses, Seminars,

Sports Teams, etc.Anything That Can Be Followed or Joined By Members

Could Be A Group

Page 38: Community With BuddyPress (WordCamp Orlando 2011)

What Can We Learn From Peerbackers.com?

Groups Can Be Anything If You Think “Outside The Box”Groups Can Be Projects, Educational Courses, Seminars,

Sports Teams, etc.Anything That Can Be Followed or Joined By Members

Could Be A GroupAnything That Has It’s Own Unique Activity

Could Be A Group

Page 39: Community With BuddyPress (WordCamp Orlando 2011)

TASTYKITCHEN.COMCOOKING COMMUNITY USING BUDDYPRESS

Page 40: Community With BuddyPress (WordCamp Orlando 2011)

TASTYKITCHEN.COMCOOKING COMMUNITY USING BUDDYPRESS

Page 41: Community With BuddyPress (WordCamp Orlando 2011)

TASTYKITCHEN.COMCREATIVELY USING WORDPRESS BLOGGING, INTEGRATING INTO BUDDYPRESS PROFILES

Page 42: Community With BuddyPress (WordCamp Orlando 2011)

What Can We Learn From TastyKitchen.com?

Don’t Forget The Power of WordPress Blogging

Page 43: Community With BuddyPress (WordCamp Orlando 2011)

What Can We Learn From TastyKitchen.com?

Don’t Forget The Power of WordPress BloggingWith Great Power Comes Great Responsibility

Page 44: Community With BuddyPress (WordCamp Orlando 2011)

CUNY ACADEMIC COMMONSHTTP://COMMONS.GC.CUNY.EDU/

Page 45: Community With BuddyPress (WordCamp Orlando 2011)

What Can We Learn From CUNY Academic Commons?

BuddyPress is great for use in educational institutions

Page 47: Community With BuddyPress (WordCamp Orlando 2011)

ZOMBIESVSHIPPIES.COMUSING WORDPRESS AND BUDDYPRESS TO CREATE A SOCIAL GAME

Page 48: Community With BuddyPress (WordCamp Orlando 2011)

How Did They Use BuddyPress To Make a Social Game?- BuddyPress Users Became “Players” In The Social Game- Leaderboard is a list of “top users” sorted by points- Using BuddyPress Achievements Plugin To Record OnSite Actions And Assign Points

Page 49: Community With BuddyPress (WordCamp Orlando 2011)

Tips On Thinking “Outside The Box” With BuddyPress

Page 50: Community With BuddyPress (WordCamp Orlando 2011)

When Creating A New Project or Site, Ask Yourself:1. Do I need user registration and profiles are needed on some level?2. Are users interacting, collaborating, or communicating with each other?3. Are users posting content (blog posts, updates, etc.) that they want to share?4. Am I already using WordPress As A CMS? (Duh.)

Page 51: Community With BuddyPress (WordCamp Orlando 2011)

When Creating A New Project or Site, Ask Yourself:1. Do I need user registration and profiles are needed on some level?2. Are users interacting, collaborating, or communicating with each other?3. Are users posting content (blog posts, updates, etc.) that they want to share?4. Am I already using WordPress As A CMS? (Duh.)

* Of course, BuddyPress won't fit every situation.

Page 52: Community With BuddyPress (WordCamp Orlando 2011)

Please excuse me... I’m going to use the F word now.

Page 53: Community With BuddyPress (WordCamp Orlando 2011)

BuddyPress sites don’t all have to be like... Facebook.The term “social network” has been abused. Remember that BuddyPress is not “all or nothing” and not every site has to have all attributes of a typical “social network”. Turn on/off modules as you need them.

Page 54: Community With BuddyPress (WordCamp Orlando 2011)

With custom coding and elbow grease, in theory you can create variations of ideas found at these popular social sites:

FoursquareFlickrForrst.com

Page 56: Community With BuddyPress (WordCamp Orlando 2011)

Plugins That Can Help You Think “Outside The Box”

With BuddyPress

Page 57: Community With BuddyPress (WordCamp Orlando 2011)

Achievements for BuddyPress

Inspired by video game achievement systems, Achievements for BuddyPress gives your community fresh impetus by promoting and rewarding social interaction with challenges, badges and points. For example, reward users for commenting on a blog post or uploading a picture to their profile.

Developer: Paul Gibbs

Page 59: Community With BuddyPress (WordCamp Orlando 2011)

Gravity Forms w/ User Registration Add-OnCreate a registration form that creates a user account, and automatically populate user meta data and BuddyPress profile data. The User Registration Add-On also integrates with the PayPal Add-On to require a payment before the user is registered.

http://www.gravityhelp.com/gravity-forms-user-registration-add-on-v1-0-beta-1-released/

Page 60: Community With BuddyPress (WordCamp Orlando 2011)

Group Documents

Group Documents creates a page within each BuddyPress group to upload and any type of file, attachment or document. Documents can be edited and deleted either by the document owner or by the group administrator.

Developer: Peter Anselmo

http://buddypress.org/community/groups/buddypress-group-documents/

Page 61: Community With BuddyPress (WordCamp Orlando 2011)

BuddyPress Mobile

Theme optimized for viewing on iPhone, iPod touch. Will also work on Android and some Blackberry devices.

Developer: @modemlooper

http://buddypress.org/community/groups/buddypress-mobile

Page 62: Community With BuddyPress (WordCamp Orlando 2011)

WP DEMO Creator

Demo Data Creator is a WordPress, WPMU/MultiSite and BuddyPress plugin that allows a WordPress developer to create demo users, blogs, posts, comments.

Developer: mrwiblog

http://wordpress.org/extend/plugins/demo-data-creator/

Page 63: Community With BuddyPress (WordCamp Orlando 2011)

BuddyPress Skeleton Component

Demo Data Creator is a WordPress, WPMU/MultiSite and BuddyPress plugin that allows a WordPress developer to create demo users, blogs, posts, comments.

Developer: mrwiblog

http://wordpress.org/extend/plugins/demo-data-creator/

Page 64: Community With BuddyPress (WordCamp Orlando 2011)

BP Multi Network

This plugin segregates BuddyPress social networks in a multi network WordPress install so that each WP network has a different social network. The user base is still shared across the WP install.

Developer: John James Jacoby, Ron Rennick

Page 65: Community With BuddyPress (WordCamp Orlando 2011)

BP Group Management

Creates a panel that site admins can use to manage BP group membership by banning, unbanning, promoting and demoting current members of any group, adding new members to any group, and deleting groups.

Developer: Boone Gorges

http://wordpress.org/extend/plugins/bp-group-management/

Page 66: Community With BuddyPress (WordCamp Orlando 2011)

Invite Anyone

1. The ability to invite members to the site by email.

2. By default, BuddyPress only allows group admins to invite their friends to groups. In some communities, you might want members to be able to invite non-friends to groups as well. This plugin populates the invitation checklist with the entire membership of the site, rather than just a friend list.

Developer: Boone Gorges

http://wordpress.org/extend/plugins/invite-anyone/

Page 67: Community With BuddyPress (WordCamp Orlando 2011)

Where Can I Get Inspiration For BuddyPress?

Page 68: Community With BuddyPress (WordCamp Orlando 2011)

Bookmark These.You Know You Want To.

BPInspirehttp://www.bpinspire.com/

BuddyPress.org Showcasehttp://buddypress.org/showcase/

BuddyBoss Directoryhttp://www.buddyboss.com/buddypress-site-directory/

Buddy Devhttp://buddydev.com/

BP Trickshttp://bp-tricks.com

Page 70: Community With BuddyPress (WordCamp Orlando 2011)

Getting into BuddyPress development

Page 71: Community With BuddyPress (WordCamp Orlando 2011)

BP Template Pack

Add support for BuddyPress to your existing WordPress theme. This plugin will guide you through the process step by step. Once you are finished, your existing WordPress theme will be able to manage and display all BuddyPress pages and content. The process is completely reversible and does not modify any of your existing template files.

Developer: BP Team

http://wordpress.org/extend/plugins/bp-template-pack/

Page 72: Community With BuddyPress (WordCamp Orlando 2011)

The LoopStandard WordPress Loop

<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>

Page 73: Community With BuddyPress (WordCamp Orlando 2011)

The LoopStandard WordPress Loop

<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>

WP Template Tags<?php the_title(); ?><?php the_content(); ?>

Page 74: Community With BuddyPress (WordCamp Orlando 2011)

The LoopStandard WordPress Loop

<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>

BuddyPress Loop<?php if ( bp_has_members() ) : while ( bp_has_members() ) : bp_the_member(); ?>

WP Template Tags<?php the_title(); ?><?php the_content(); ?>

Page 75: Community With BuddyPress (WordCamp Orlando 2011)

The LoopStandard WordPress Loop

<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>

BuddyPress Loop<?php if ( bp_has_members() ) : while ( bp_has_members() ) : bp_the_member(); ?>

WP Template Tags<?php the_title(); ?><?php the_content(); ?>

BP Template Tags<?php bp_member_name(); ?><?php bp_member_permalink(); ?>

http://codex.buddypress.org/developer-docs/buddypress-template-tags/

Page 76: Community With BuddyPress (WordCamp Orlando 2011)

Conditional Template TagsWordPress Conditional Tags

is_page()is_single()is_archive()

Page 77: Community With BuddyPress (WordCamp Orlando 2011)

Conditional Template TagsWordPress Conditional Tags

is_page()is_single()is_archive()

BuddyPress Conditional Tags

bp_is_active()bp_is_members()bp_is_my_profile()

http://codex.buddypress.org/developer-docs/conditional-template-tags/

Page 78: Community With BuddyPress (WordCamp Orlando 2011)

Pro Tip: Get Curent Templateadd_filter( 'template_include', 'get_current_template' );add_filter( 'bp_load_template', 'get_current_template' );

function get_current_template( $template ){ global $current_template; $current_template = str_replace( WP_CONTENT_DIR, basename( WP_CONTENT_DIR ), $template ); $current_template = str_replace( '/', '-', str_replace( '.php', '', $current_template ) );

return $template;}

add_filter( 'body_class', function( $classes ){ global $current_template;

$classes[] = $current_template; return $classes;}, 999 );

Page 79: Community With BuddyPress (WordCamp Orlando 2011)

http://codex.buddypress.org/developer-docs/group-extension-api/

Pro Tip: Get Curent Template

Page 80: Community With BuddyPress (WordCamp Orlando 2011)

BP Group Extension API

http://codex.buddypress.org/developer-docs/group-extension-api/

Page 81: Community With BuddyPress (WordCamp Orlando 2011)

BP Group Extension APIclass My_Group_Extension extends BP_Group_Extension { function __construct() { global $bbp;

// Name and slug $this->name = __( 'Custom Header' ); $this->nav_item_name = __( 'Custom Header' ); $this->slug = 'custom-header';

// visibliblity $this->visibility = 'public';

// Set positions towards end $this->create_step_position = 21; $this->nav_item_position = 31; }}

http://codex.buddypress.org/developer-docs/group-extension-api/

Page 82: Community With BuddyPress (WordCamp Orlando 2011)

BP Group Extension APIfunction create_screen() {}

function create_screen_save() {}

function edit_screen() {}

function edit_screen_save() {}

function widget_display() {}

function display() {}

http://codex.buddypress.org/developer-docs/group-extension-api/

Page 83: Community With BuddyPress (WordCamp Orlando 2011)

BP Group Extension API

http://codex.buddypress.org/developer-docs/group-extension-api/

Page 84: Community With BuddyPress (WordCamp Orlando 2011)

Thanks!Questions?