Community With BuddyPress (WordCamp Orlando 2011)

  • 4,195 views
Uploaded on

This discussion was presented at WordCamp Orlando 2011 on Dec 3rd, 2012. …

This discussion was presented at WordCamp Orlando 2011 on Dec 3rd, 2012.

It didl address how to use BuddyPress for a variety of projects and sites – beyond just simply adding a “social network” to your blog.

We will explore how you can customize BuddyPress templates and functions to alter and add components for custom projects. We’ll also check out some great customizable plugins. The goal is to have fun and explore what BuddyPress can really do.

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
4,195
On Slideshare
0
From Embeds
0
Number of Embeds
3

Actions

Shares
Downloads
65
Comments
0
Likes
5

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Community withBuddyPressPtah Dunbar & David BissetWordCamp Orlando - December 3rd, 2011
  • 2. What We WillBe 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”
  • 3. Who Are We?“The Harold and Kumar of WordPress”
  • 4. LIVING IN WONDERFUL SOUTH FLORIDA
  • 5. 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
  • 6. FATHER OF 3 BEAUTIFUL DAUGHTERS
  • 7. HUSBAND TO A WONDERFUL WIFE(WOMAN PICTURED MIGHT NOT BE ACTUAL WIFE)
  • 8. 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
  • 9. What Is BuddyPress?In a nutshell: “Social Networking In a Box”
  • 10. What Is BuddyPress?In a nutshell: “Social Networking In a Box”Set Of Open Source Plugins For WordPress
  • 11. What Is BuddyPress?In a nutshell: “Social Networking In a Box”Set Of Open Source Plugins For WordPressConceived in 2008, 1st Release in May 2009
  • 12. ActivityStreams Global, personal and group activity streams with threaded commenting, direct posting, favoriting and @mentions. All with full RSS feed and email notification support.
  • 13. ExtendedProfilesFully editable profile fields allowyou to define the fields users canfill in to describe themselves. Tailorprofile fields to suit your audience.
  • 14. FriendingLet your users make connectionsso they can track the activity ofothers, or filter on only those usersthey care about the most.
  • 15. Private Private messaging will allow your users to talk to each other directly, and in private. Not just limited toMessaging one on one discussions, your users can send messages to multiple recipients.
  • 16. 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.
  • 17. GroupsPowerful public, private or hiddengroups allow your users to breakthe discussion down into specifictopics. Extend groups with yourown custom features using thegroup extension API.
  • 18. ForumsFull powered discussion forumsbuilt directly into groups allow formore conventional in-depthconversations.
  • 19. Pick and chooseIn a nutshell: “Social Networking In a Box”Set Of Open Source Plugins For WordPressConceived in 2008, 1st Release in May 2009
  • 20. What Does BuddyPressLook Like By Default?
  • 21. DEFAULT BUDDYPRESS THEMEWORDPRESS 3.2.1 / BUDDYPRESS 1.5.1
  • 22. DEFAULT BUDDYPRESS THEMEWORDPRESS 3.2.1 / BUDDYPRESS 1.5.1
  • 23. DEFAULT BUDDYPRESS THEMEWORDPRESS 3.2.1 / BUDDYPRESS 1.5.1
  • 24. DEFAULT BUDDYPRESS THEMEWORDPRESS 3.2.1 / BUDDYPRESS 1.5.1
  • 25. 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.)
  • 26. What Can You Use BuddyPress For? Solution Gaining Popularity:A niche social network for your local organization, church, school, meetup group, etc.
  • 27. MY.TELEGRAPH.CO.UKEXAMPLE BUDDYPRESS SITE
  • 28. MY.TELEGRAPH.CO.UKEXAMPLE BUDDYPRESS SITE
  • 29. Why Use BuddyPress?Open Source – Like WordPress, BuddyPress is an open-source content management system. It’sfree, 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. Thereare 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 receiveunsolicited emails. All communication is in your handsCustomization - Tailor the features and functionality to your community’s needs with BuddyPress-specific plugins and the vast WordPress plugin repository.
  • 30. Is There More BuddyPress Can Do?Let’s Take A Look At Examples At Sites ThatThought “Outside The Box” When It Came To BuddyPress
  • 31. PEERBACKERS.COMCROWDFUNDING (ALA KICKSTARTER.COM) USING BUDDYPRESS
  • 32. PROJECTS PAGEMODIFICATIONS TO BUDDYPRESS GROUP API
  • 33. SUBMIT PROJECT PAGEMODIFICATIONS TO BUDDYPRESS CREATE GROUP PAGE
  • 34. What Can We Learn From Peerbackers.com?
  • 35. What Can We Learn From Peerbackers.com?Groups Can Be Anything If You Think “Outside The Box”
  • 36. 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.
  • 37. 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
  • 38. 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 Anything That Has It’s Own Unique Activity Could Be A Group
  • 39. TASTYKITCHEN.COMCOOKING COMMUNITY USING BUDDYPRESS
  • 40. TASTYKITCHEN.COMCOOKING COMMUNITY USING BUDDYPRESS
  • 41. TASTYKITCHEN.COMCREATIVELY USING WORDPRESS BLOGGING, INTEGRATING INTO BUDDYPRESS PROFILES
  • 42. What Can We Learn From TastyKitchen.com? Don’t Forget The Power of WordPress Blogging
  • 43. What Can We Learn From TastyKitchen.com? Don’t Forget The Power of WordPress Blogging With Great Power Comes Great Responsibility
  • 44. CUNY ACADEMIC COMMONSHTTP://COMMONS.GC.CUNY.EDU/
  • 45. What Can We Learn From CUNY Academic Commons?BuddyPress is great for use in educational institutions
  • 46. What Can We Learn From CUNY Academic Commons?BuddyPress is great for use in educational institutions Power of BuddyPress Plugins HTTP://DEV.COMMONS.GC.CUNY.EDU/2010/05/25/BUDDYPRESS-PLUGINS- RUNNING-ON-THE-CUNY-ACADEMIC-COMMONS/
  • 47. ZOMBIESVSHIPPIES.COMUSING WORDPRESS AND BUDDYPRESS TO CREATE A SOCIAL GAME
  • 48. How Did They UseBuddyPress To Makea Social Game?- BuddyPress Users Became “Players” InThe Social Game- Leaderboard is a list of “top users”sorted by points- Using BuddyPress Achievements PluginTo Record OnSite Actions And AssignPoints
  • 49. Tips On Thinking “OutsideThe Box” With BuddyPress
  • 50. When Creating A NewProject or Site, Ask Yourself:1. Do I need user registration andprofiles are needed on some level?2. Are users interacting,collaborating, or communicating witheach other?3. Are users posting content (blogposts, updates, etc.) that they want toshare?4. Am I already using WordPress As ACMS? (Duh.)
  • 51. When Creating A NewProject or Site, Ask Yourself:1. Do I need user registration andprofiles are needed on some level?2. Are users interacting,collaborating, or communicating witheach other?3. Are users posting content (blogposts, updates, etc.) that they want toshare?4. Am I already using WordPress As ACMS? (Duh.) * Of course, BuddyPress wont fit every situation.
  • 52. Please excuse me... I’mgoing to use the F word now.
  • 53. BuddyPress sites don’t allhave to be like... Facebook.The term “social network” has beenabused. Remember that BuddyPressis not “all or nothing” and not everysite has to have all attributes of atypical “social network”. Turn on/offmodules as you need them.
  • 54. With custom coding andelbow grease, in theory youcan create variations ofideas found at these popularsocial sites:FoursquareFlickrForrst.com
  • 55. Don’t forget internaluses for BuddyPress.- Use BP as internalcommunication tool for yourcompany or for a client.- Use BuddyPress as aPrivate Collaboration Systemhttp://www.1stwebdesigner.com/tutorials/buddypress-collaboration-system/
  • 56. Plugins That Can Help You Think “Outside The Box” With BuddyPress
  • 57. Achievements forBuddyPressDeveloper: Paul GibbsInspired by video game achievementsystems, Achievements for BuddyPressgives your community fresh impetus bypromoting and rewarding socialinteraction with challenges, badges andpoints. For example, reward users forcommenting on a blog post or uploading apicture to their profile.
  • 58. http://vimeo.com/15782949
  • 59. Gravity Forms w/User RegistrationAdd-OnCreate a registration form that creates auser account, and automatically populateuser meta data and BuddyPress profiledata. The User Registration Add-On alsointegrates with the PayPal Add-On torequire a payment before the user isregistered.http://www.gravityhelp.com/gravity-forms-user-registration-add-on-v1-0-beta-1-released/
  • 60. Group DocumentsDeveloper: Peter AnselmoGroup Documents creates a page withineach BuddyPress group to upload and anytype of file, attachment or document.Documents can be edited and deletedeither by the document owner or by thegroup administrator.http://buddypress.org/community/groups/buddypress-group-documents/
  • 61. BuddyPress MobileDeveloper: @modemlooperTheme optimized for viewing on iPhone,iPod touch. Will also work on Android andsome Blackberry devices.http://buddypress.org/community/groups/buddypress-mobile
  • 62. WP DEMO CreatorDeveloper: mrwiblogDemo Data Creator is a WordPress, WPMU/MultiSite and BuddyPress plugin thatallows a WordPress developer to createdemo users, blogs, posts, comments.http://wordpress.org/extend/plugins/demo-data-creator/
  • 63. BuddyPress SkeletonComponentDeveloper: mrwiblogDemo Data Creator is a WordPress, WPMU/MultiSite and BuddyPress plugin thatallows a WordPress developer to createdemo users, blogs, posts, comments.http://wordpress.org/extend/plugins/demo-data-creator/
  • 64. BP Multi NetworkDeveloper: John James Jacoby, RonRennickThis plugin segregates BuddyPress socialnetworks in a multi network WordPressinstall so that each WP network has adifferent social network. The user base isstill shared across the WP install.
  • 65. BP GroupManagementDeveloper: Boone GorgesCreates a panel that site admins can useto manage BP group membership bybanning, unbanning, promoting anddemoting current members of any group,adding new members to any group, anddeleting groups.http://wordpress.org/extend/plugins/bp-group-management/
  • 66. Invite AnyoneDeveloper: Boone Gorges1. The ability to invite members to the siteby email.2. By default, BuddyPress only allowsgroup admins to invite their friends togroups. In some communities, you mightwant members to be able to invite non-friends to groups as well. This pluginpopulates the invitation checklist with theentire membership of the site, rather thanjust a friend list.http://wordpress.org/extend/plugins/invite-anyone/
  • 67. Where Can I GetInspiration For BuddyPress?
  • 68. Bookmark These.You Know You Want To.BuddyPress.org Showcasehttp://buddypress.org/showcase/BPInspirehttp://www.bpinspire.com/Buddy Devhttp://buddydev.com/BuddyBoss Directoryhttp://www.buddyboss.com/buddypress-site-directory/BP Trickshttp://bp-tricks.com
  • 69. People To Stalk@JohnJamesJacoby@apeatling@pgibbs@boone@ptahdunbar@mazftw@jeffsayre@bpdevhttps://twitter.com/#!/dimensionmedia/buddypress-developers
  • 70. Getting into BuddyPress development
  • 71. BP Template PackDeveloper: BP TeamAdd support for BuddyPress to yourexisting WordPress theme. This plugin willguide you through the process step bystep. Once you are finished, your existingWordPress theme will be able to manageand display all BuddyPress pages andcontent. The process is completelyreversible and does not modify any of yourexisting template files.http://wordpress.org/extend/plugins/bp-template-pack/
  • 72. The LoopStandard WordPress Loop<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
  • 73. The LoopStandard WordPress Loop<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>WP Template Tags<?php the_title(); ?><?php the_content(); ?>
  • 74. The LoopStandard WordPress Loop<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>WP Template Tags<?php the_title(); ?><?php the_content(); ?>BuddyPress Loop<?php if ( bp_has_members() ) : while ( bp_has_members() ) : bp_the_member(); ?>
  • 75. The Loop Standard WordPress Loop <?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?> WP Template Tags <?php the_title(); ?> <?php the_content(); ?> BuddyPress Loop <?php if ( bp_has_members() ) : while ( bp_has_members() ) : bp_the_member(); ?> BP Template Tags <?php bp_member_name(); ?> <?php bp_member_permalink(); ?>http://codex.buddypress.org/developer-docs/buddypress-template-tags/
  • 76. Conditional Template TagsWordPress Conditional Tagsis_page()is_single()is_archive()
  • 77. Conditional Template Tags WordPress Conditional Tags BuddyPress Conditional Tags is_page() bp_is_active() is_single() bp_is_members() is_archive() bp_is_my_profile()http://codex.buddypress.org/developer-docs/conditional-template-tags/
  • 78. 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 );
  • 79. Pro Tip: Get Curent Templatehttp://codex.buddypress.org/developer-docs/group-extension-api/
  • 80. BP Group Extension APIhttp://codex.buddypress.org/developer-docs/group-extension-api/
  • 81. BP Group Extension API class 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/
  • 82. BP Group Extension API function 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/
  • 83. BP Group Extension APIhttp://codex.buddypress.org/developer-docs/group-extension-api/
  • 84. Thanks!Questions?