BuddyPress.org https://buddypress.org Fun & flexible software for online communities, teams, and groups Fri, 03 Jan 2020 21:36:11 +0000 en-US hourly 1 https://wordpress.org/?v=5.3.3-alpha-47290 https://buddypress.org/wp-content/uploads/1/2016/06/cropped-disc-1-32x32.png BuddyPress.org https://buddypress.org 32 32 BuddyPress 5.1.2 Security Release https://buddypress.org/2020/01/buddypress-5-1-2/ https://buddypress.org/2020/01/buddypress-5-1-2/#comments Fri, 03 Jan 2020 21:36:11 +0000 https://buddypress.org/?p=309637 BuddyPress 5.1.2 is now available. This is a security release. All BuddyPress installations are strongly encouraged to upgrade as soon as possible.

The 5.1.2 release addresses one security issue:

  • Certain REST API requests could result in the exposure of private data. Discovered and reported independently by Petter Walbø Johnsgård and Jacek Suski.

The vulnerability was reported privately to the BuddyPress team, in accordance with WordPress’s security policies. Our thanks to the reporters for practicing coordinated disclosure.

For complete details, visit the 5.1.2 changelog.

Update to BuddyPress 5.1.2 today in your WordPress Dashboard, or by downloading from the WordPress.org plugin repository.

]]>
https://buddypress.org/2020/01/buddypress-5-1-2/feed/ 2
BuddyPress 5.1.1 Security Release https://buddypress.org/2019/12/buddypress-5-1-1/ https://buddypress.org/2019/12/buddypress-5-1-1/#comments Mon, 23 Dec 2019 07:05:36 +0000 https://buddypress.org/?p=309527 BuddyPress 5.1.1 is now available. This is a security release. All BuddyPress installations are strongly encouraged to upgrade as soon as possible.

The 5.1.1 release addresses one security issue:

  • A denied of service was fixed that could allow a logged in user to remove another user’s avatar and also any empty folder. Discovered by nomnom.

Thi vulnerability was reported privately to the BuddyPress team, in accordance with WordPress’s security policies. Our thanks to the reporter for practicing coordinated disclosure.

For complete details, visit the 5.1.1 changelog.

Update to BuddyPress 5.1.1 today in your WordPress Dashboard, or by downloading from the WordPress.org plugin repository.

]]>
https://buddypress.org/2019/12/buddypress-5-1-1/feed/ 5
BuddyPress 5.1.0 Maintenance Release https://buddypress.org/2019/12/buddypress-5-1-0/ https://buddypress.org/2019/12/buddypress-5-1-0/#comments Sat, 07 Dec 2019 13:52:40 +0000 https://buddypress.org/?p=309343 Immediately available is BuddyPress 5.1.0. This maintenance release fixes 8 bugs related to the 5.0.0 release, and is a recommended upgrade for all BuddyPress installations.

For details on the changes, please read the 5.1.0 release notes.

Update to BuddyPress 5.1.0 today in your WordPress Dashboard, or by downloading from the WordPress.org plugin repository.

Many thanks to 5.1.0 contributors

szepe.viktor, JarretC, Renato Alves (espellcaste), David Cavins (dcavins), Boone Gorges (boonebgorges), John James Jacoby (johnjamesjacoby) & Mathieu Viet (imath).

]]>
https://buddypress.org/2019/12/buddypress-5-1-0/feed/ 2
​​Contributing to BuddyPress just got easier :) https://buddypress.org/2019/12/bp-beta-tester-1-0-0/ https://buddypress.org/2019/12/bp-beta-tester-1-0-0/#comments Tue, 03 Dec 2019 12:27:10 +0000 https://buddypress.org/?p=309282 Yesterday morning we’ve deployed the first stable version of the BP Beta Tester plugin on the WordPress.org plugins directory.​​
BP Beta Tester

This plugin’s goal is to make it easier to beta test our pre-releases. You just need to install and activate the plugin to be ready to try our beta and release candidate versions once we’ve announced them on this blog.​​

Beta testing BuddyPress is very important to make sure it behaves the right way for you and for the community. Although we, the BuddyPress Development Team, are regularly testing it, it’s very challenging to test every possible configuration of WordPress and BuddyPress. That’s why we absolutely need your help during these pre-release stages.​​

Making this plugin available was one of the means we thought about during our post 5.0.0 release development meeting to have more BuddyPress contributors.​​

Beta testing is actually a good way to start contributing, to anticipate and fix potential issues before you have the bad surprise to meet them once you’re upgrading to a new stable version of the plugin.​​

NB: to beta test BuddyPress, we strongly advise you to have a local copy of your live site or a staging site : it’s always safer than doing it on a production site.​​

During our next pre-release stages, when you will find something is going wrong during your beta tests, please think of warning us about it submitting a ticket on our Development Tracker or posting a new topic in our support forums.​​

Thanks in advance for your time and help <3

]]>
https://buddypress.org/2019/12/bp-beta-tester-1-0-0/feed/ 2
The road to BuddyPress blocks https://buddypress.org/2019/11/the-road-to-buddypress-blocks/ https://buddypress.org/2019/11/the-road-to-buddypress-blocks/#comments Fri, 08 Nov 2019 18:21:46 +0000 https://buddypress.org/?p=308912 Hi everyone!

First, we’d like to thank all the people who contributed to the poll we shared on our development updates blog and into a topic of one of our forums a month ago. It was really important for us to have your expectations about the content the plugin should provide to the WordPress Block Editor.

It’s now time for us to share with you the results of this poll and tell you how we plan to work on BuddyPress blocks for the next release(s) of your favorite community engine!

The results of the Blocks Poll

It received a total of 161 votes divided as follows:

  • A block to share a post or a page via the Activity Stream : 17 votes.
  • A block to list the recently published posts from across your network (Exists as a widget) : 13 votes.
  • A block to display Sitewide Notices posted by the site administrator (Exists as a widget) : 12 votes.
  • A block to dynamicaly list the recently active, popular, newest, or alphabetical groups (Exists as a widget) : 11 votes.
  • A block to display Profile photos of online users (Exists as a widget) : 10 votes.
  • A block to highlight a single Group : 10 votes.
  • A block to highlight a single Member : 10 votes.
  • A block to dynamicaly list the recently active, popular, and newest Friends of a given member (Exists as a widget) : 9 votes.
  • A block to display the Profile photos of recently active members (Exists as a widget) : 9 votes.
  • A block to restrict content to a Group type : 9 votes.
  • A block to dynamicaly list the recently active, popular, and newest members (Exists as a widget) : 8 votes.
  • A block to restrict content to a Member type : 8 votes.
  • A block to restrict content to Group members : 7 votes.
  • A block to list the Member types : 7 votes.
  • A block to display a selected Activity as a quote : 6 votes.
  • A block to list the Group types : 5 votes.
  • A placeholder block for directory pages to eventually make them benefit from wide alignments : 5 votes.
  • No blocks! : 3 votes.
  • Other : 2 votes.

As you can see, top results are mostly corresponding to existing widgets except for:

  • A block to share a post or a page via the Activity Stream.
  • A block to highlight a single Group or a single Member.

We also analyze from these results that there is no blocks expected to be a must have and it’s interesting to see that the 2 first blocks are about highlighting WordPress content. Finally only one suggestion was made : A “Block for Activity Stream component” (PS: in Nouveau there’s an existing widget for it).

About the BuddyPress development team’s decision regarding BuddyPress blocks.

Screen capture of the BuddyPress Blocks category when the BP Blocks plugin is active.

We think working on blocks to highlight a single Group or a single Member is a good starting point. Moreover it’s something we don’t make possible yet. We also think converting existing widgets to blocks is an obvious move to do.

We’ve decided to work on these blocks from a specific GitHub repository and to merge into the Core of the BuddyPress plugin the “JavaScript built” blocks as soon as they are ready. To the very least, we’ll have the 2 blocks to highlight a Group or a Member of your community site merged into BuddyPress for its next major release (6.0.0).

We’ve just pushed the minimal code to start working on BuddyPress blocks into the BP Blocks’ GitHub repository. We’ll soon add contributing notes into this repository so that you can help us building beautiful BuddyPress blocks. You can already share with us your “Pull Requests” forking the repository.

If you can’t wait for the contributing notes to start working on BuddyPress Blocks, here’s a quick “how-to” :

  • Once you cloned your fork into your development environment, do npm install
  • The JavaScript (ESNext) code for your block needs to land into the /src/bp-{ID of the BP Component}/js/blocks/ directory.
  • Have a look at the way the bp/member block is registered here to build your registration code.
  • run npm start to see how your JavaScript code behaves at each edit.

Let’s build awesome BuddyPress blocks, together <3.

]]>
https://buddypress.org/2019/11/the-road-to-buddypress-blocks/feed/ 1
Test BuddyPress 5.1.0-beta1 thanks to our new BP Beta Tester plugin https://buddypress.org/2019/11/buddypress-5-1-0-beta1/ https://buddypress.org/2019/11/buddypress-5-1-0-beta1/#comments Tue, 05 Nov 2019 14:48:52 +0000 https://buddypress.org/?p=308797 Hi BuddyPress contributors!

We will soon publish a maintenance release (5.1.0) to fix some issues that arose since BuddyPress 5.0.0 “Le Gusto”. A detailed changelog will be part of our official release notes, but, until then, you can check out this report on Trac for the full list of fixes.

Today we’re publishing a very specific beta release for version 5.1.0 as it has two goals:

  • Let you make sure the fixes have no side effects on your community site’s configuration.
  • Test in real conditions the plugin we’ve been working on and which should greatly simplify the way you betatest BuddyPress.

Meet BP Beta Tester

Once installed it will help you to upgrade your website to the latest Beta or Release candidate. You will also be able to downgrade to the latest stable release once you finished your Beta tests.

Once activated, go to the home page of your Dashboard (Network Dashboard if your are using WordPress Multisite) to find the BP Beta Tester sub menu of the Dashboard menu. From this page, you’ll be able to install the 5.1.0-beta1 release clicking on the tab “Upgrade to 5.1.0-beta1”.

You can always downgrade to the latest stable version of BuddyPress using the corresponding tab of the page’s header.

The development version of this plugin is hosted on GitHub: you can contribute to it pulling requests or reporting issues. We plan to submit this plugin on the WordPress.org Plugins directory so that it’s easier to install.

Download BP Beta Tester or Download BuddyPress 5.1.0-beta1.

Happy testing 😉

]]>
https://buddypress.org/2019/11/buddypress-5-1-0-beta1/feed/ 2
BuddyPress 5.0.0 “Le Gusto” https://buddypress.org/2019/09/buddypress-5-0-0-le-gusto/ https://buddypress.org/2019/09/buddypress-5-0-0-le-gusto/#comments Sat, 28 Sep 2019 11:07:54 +0000 https://buddypress.org/?p=308041 Here’s our latest major release featuring the BuddyPress REST API !!
Get BuddyPress 5.0.0

We are very excited to announce the BuddyPress community the immediate availability of BuddyPress 5.0.0 code-named “Le Gusto“. You can get it clicking on the above button, downloading it from our WordPress.org plugin repository or checking it out from our subversion repository.

NB: if you’re upgrading from a previous version of BuddyPress, please make sure to back-up your WordPress database and files before proceeding.

You can view all the changes we made in 5.0.0 thanks to our full release note. Below are the key features we want to get your attention on.

The BP REST API opens a new era for BuddyPress!

You can now enjoy REST API endpoints for members, groups, activities, private messages, screen notifications and extended profiles.

BuddyPress endpoints provide machine-readable external access to your WordPress site with a clear, standards-driven interface, paving the way for new and innovative methods of interacting with your community through plugins, themes, apps, and beyond.

The BP REST API opens great new opportunities to improve the way you play with the BuddyPress component features: we couldn’t resist to start building on top of it introducing…

A new interface for managing group members.

Screen Capture of the new Group Mange Members UI

Group administrators will love our new interface for managing group membership. Whether you’re working as a group admin on the front-end Manage tab, or as the site admin on the Dashboard, the new REST API-based tools are faster, easier to use, and more consistent.

The BP REST API is fully documented

The development team worked hard on the features but also took the time to write the documentation about how to use it and how to extend it. BuddyPress developers, let’s start building great stuff for our end users: take a look at the BP REST API developer reference.

Improved Group invites and membership requests

Thanks to the new BP Invitations API, Group invites and membership requests are now managed in a more consistent way. The BP Invitations API abstracts how these two actions are handled and allows developers to use them for any object on your site (e.g., Sites of a WordPress network).

Read more about the BP Invitations API.

Help our support volunteers help you.

Knowing your WordPress and BuddyPress configuration is very important when one of our beloved support volunteers tries to help you fix an issue. That’s why we added a BuddyPress section to the Site Health Info Administration screen.

Screen capture of the BuddyPress section of the Site Health screen.

The panel is displayed at the bottom of the screen. It includes the BuddyPress version, active components, active template pack, and a list of other component-specific settings information.

Improved integrations with WordPress

BP Nouveau Template Pack

In BuddyPress 5.0.0, the BP Nouveau template pack looks better than ever with the Twenty Nineteen theme.

Nouveau now uses the same password control as the one used in WordPress Core, for better consistency between BuddyPress and WordPress spaces.

BuddyPress Blocks now have their own category into the Block Editor.

Developers building tools for the Block Editor can now add their blocks to the BuddyPress category. This change provides a foundation for organizing custom BuddyPress blocks.

Read more about this feature in this development note.

Screen capture of the comment Matt made about BuddyPress 4.0.0

PS: we know, just like Matt, you’re eager to enjoy high quality community blocks: now we have the BP REST API and this new Blocks category available in BuddyPress Core, get ready to be amazed for our next release. Fasten your seatbelts: BuddyPress blocks are arriving!

BuddyPress Le Gusto

5.0.0 is code-named “Le Gusto” after the well known Pizza restaurant in Fortaleza, Brazil. It’s the perfect place to meet with friends and start tasting new flavors like @espellcaste’s favorite one: the “Pizza de Camarão”.

Muito Obrigado

As usual, this BuddyPress release is only possible thanks to the contributions of the community. Special thanks to the following folks who contributed code and testing to the release: baconbro, Boone B Gorges (boonebgorges), boop (joncadams), Brajesh Singh (sbrajesh), David Cavins (dcavins), Eric Lewis (ericlewis), geminorum, gingerbooch, Ivinco, Jake Spurlock (whyisjake), Jarret (JarretC), John James Jacoby (johnjamesjacoby), klawton, Kristian Yngve (kristianngve), Maniou, Marcus (netweblogic), Mathieu Viet (imath), Mithun Biswas, modemlooper, Paul Gibbs (DJPaul), r-a-y, razor90, Renato Alves (espellcaste), Slava Abakumov (slaFFik), Stephen Edgar (netweb), truchot, Venutius, wegosi, and of course you for using BuddyPress 😉

Feedbacks welcome!

Receiving your feedback and suggestions for future versions of BuddyPress genuinely motivates and encourages our contributors. Please share your feedback about this version of BuddyPress in the comments area of this post. And of course, if you’ve found a bug: please tell us about it into our Support forums.

]]>
https://buddypress.org/2019/09/buddypress-5-0-0-le-gusto/feed/ 13
BuddyPress 5.0.0 Release Candidate 2 https://buddypress.org/2019/09/buddypress-5-0-0-release-candidate-2/ https://buddypress.org/2019/09/buddypress-5-0-0-release-candidate-2/#comments Thu, 26 Sep 2019 02:31:06 +0000 https://buddypress.org/?p=308016 Hi!

The second release candidate for BuddyPress 5.0.0 is now available for an ultimate round of testing!

Since the first release candidate, we’ve improved the way BP REST API Controllers are loaded inside BuddyPress component classes.

This is an important milestone as we progress toward the BuddyPress 5.0.0 final release date. “Release Candidate” means that we think the new version is ready for release, but with more than 200,000 active installs, hundreds of BuddyPress plugins and Thousands of WordPress themes, it’s possible something was missed. BuddPress 5.0.0 is scheduled to be released on Monday, September 30, but we need your help to get there—if you haven’t tried 5.0.0 yet, now is the time!

Download and test the 5.0.0-RC2

PS: as usual you alternatively get a copy via our Subversion repository.

A detailed changelog will be part of our official release note, but you can get a quick overview by reading the post about the 5.0.0 Beta1 release.

If you think you’ve found a bug, please let us know reporting it on the support forums and/or on our development tracker.

Thanks in advance for giving this second release candidate a test drive!

]]>
https://buddypress.org/2019/09/buddypress-5-0-0-release-candidate-2/feed/ 2
An online community learning hub to deepen studies during IRL meetings https://buddypress.org/2019/09/an-online-community-learning-hub-to-deepen-studies-during-irl-meetings/ https://buddypress.org/2019/09/an-online-community-learning-hub-to-deepen-studies-during-irl-meetings/#comments Tue, 24 Sep 2019 09:07:27 +0000 https://buddypress.org/?p=307967 This is a guest post by Tanner Moushey, Founder and Lead Engineer of StudyChurch. He is a BP REST API early adopter and we thought his achievments implementing Headless BuddyPress was a great source of inspirations for the BuddyPress community. Many thanks to him for taking the time to share with us about this case study.

Peer reviewed by @imath

StudyChurch is an ambitious startup seeking to make a mark in the church product marketplace. With a unique approach to online interaction, StudyChurch combines elements of engagement and learning in a way that is both simple and intuitive for the end user.

Background

I began working on StudyChurch as a side project in 2015. It started as a proof of concept and an excuse to dive deeply into BuddyPress. I wanted to leverage the group and activity components that BuddyPress provides and combine that with a custom study module that I created with a custom post type, BackboneJS, and the WordPress REST API. Answers to study questions were stored in WordPress Comments and synced to a custom BuddyPress activity type which was then used to create the discussion interface. Each question had an activity component under it to show off the other group answers and corresponding discussions.

I finished the first draft of the project after several months and before too long I had groups signing up to use the system. I continued to make minor modifications over the next few years but kept running into complaints about speed and the user interface.

When I was approached in 2018 by a publisher that wanted to use StudyChurch on a larger scale it sounded like a great opportunity to rebuild.

Implementing Headless BuddyPress

One of the big changes that I wanted to make in the rebuild was to switch to a JavaScript front end. I wanted something that was going to allow us to make numerous asynchronous data requests without using Ajax, which can be slow and difficult to maintain over a large project. I decided on VueJS and started building out the API to handle the data that was previously controlled by the BuddyPress templates.

Building a custom API with the BuddyPress REST API

I’d done quite a bit of work extending the WordPress REST API on previous projects and was excited to discover the BuddyPress REST API that extended it. This took care of a lot of the structure and allowed me to focus my time on building out our custom modules and functionality. Anytime I ran into something that needed to be more flexible, I’d submit a patch to the BuddyPress REST API repository and would get a prompt resolution.

Now that we are able to post and retrieve data through the API, the user interactive elements on the site are noticeably faster and the overall load on the server is much less. Not only that, but we are ready for a native app once we get to that point.

Creating a VueJS front end

Building a completely JavaScript front end for BuddyPress was fun challenge. I underestimated how many different components I’d need to build out since I wasn’t able to rely on the BuddyPress default templates, but the end result was well worth the effort.With VueJS we were able to leverage a lot of prebuilt UI packages (like Element) to do a lot of the heavy lifting for us. Since we were no longer tied to the BuddyPress template engine, we were able to get creative with how we displayed information and handled user interactions. The end result was a clean, fast, and user friendly interface that was simple and straightforward to use.

I made a few modifications to allow WordPress and BuddyPress recognize our front end app and use it for BuddyPress components. I solved this with a pretty simple hook into the template include filter and included our template instead of the default. A few custom rewrite rules handled any non-BuddyPress url structures I needed to support and I soon had a fully functional and detached front end.

Conclusion

StudyChurch is now a powerful, robust social network ready for scale. We are still working on improving the system and adding new features which are now easier and faster to implement with the new structure.

We’ve received some great feedback from users who find the app fast and intuitive. We are hoping to build out a native app in the near future.

I’m so thankful for the work done by all of the volunteers who’ve put so much time into WordPress, BuddyPress, and now the BuddyPress REST API. I think there are going to be many more projects like StudyChurch in the near future that will leverage these great tools to build amazing and helpful solutions.

Feel free to reach out if you have any questions or comments on what we’ve done with StudyChurch. Also, you are welcome to browse our code base on GitHub.

You can read more about StudyChurch and other projects we work on at iwitnessdesign.com.

]]>
https://buddypress.org/2019/09/an-online-community-learning-hub-to-deepen-studies-during-irl-meetings/feed/ 2
A new place to learn how to build on top of BuddyPress! https://buddypress.org/2019/09/bp-devhub-1-0/ https://buddypress.org/2019/09/bp-devhub-1-0/#comments Fri, 20 Sep 2019 14:47:52 +0000 https://buddypress.org/?p=307844 Hi!

We’re very excited to officially announce the launch of a new development resources site on the BuddyPress.org network.

Today we are inaugurating developer.buddypress.org with a complete handbook documenting the BP REST API. This API will be introduced into our next major version which is scheduled on September 30, 2019. We thought you’d be interested to have a tool to help you discover the BuddyPress REST endpoints and their parameters to start playing with them (You’ll need BuddyPress 5.0.0-RC1 to have even more fun with it!).

Using the BP REST API Handbook

The main part of the handbook is the « Developer Endpoint Reference ». We grouped these endpoints according to the component they belongs to.

View the full screenshot in a new tab.

Each page of the reference is firstly introducing the component and describing the data schema of items contained into the REST responses. Then for each verb (or method), you’ll find the available arguments, their definition and an example of use with the bp.apiRequest() JavaScript function. Below is a screenshot of the method to get a specific Activity.

The future of this development resources hub

You can have a good idea of what’s coming next into this developer oriented site looking at its current landing page. We will first work on building the full PHP Code Reference for BuddyPress: functions, classes and hooks.

Then, we haven’t planned anything yet ☺ and we’re very opened to ideas and of course contributions about the « how » step and the « do » one.

About the editing workflow

Unlike the BuddyPress Codex, it’s not possible for everyone to directly edit the content of the BP REST API Handbook or the future PHP Code Reference.

But you can always report issues or suggest improvements using our Bug Tracker making sure to select the « BuddyPress.org sites » option of the components dropdown of your ticket.

Props

The first version of the development resources hub was built thanks to the involvement of these contributors:

Boone B Gorges (boonebgorges), John James Jacoby (johnjamesjacoby), Mathieu Viet (imath), Michael Beckwith (tw2113), Renato Alves (espellcaste), Stephen Edgar (netweb).

Many thanks to them 😉

]]>
https://buddypress.org/2019/09/bp-devhub-1-0/feed/ 1