Skip to:

Opened 8 years ago

Closed 4 years ago

Last modified 3 years ago

#7179 closed enhancement (fixed)

UI to Add New Group Type in wp-admin

Reported by: mercime's profile mercime Owned by: imath's profile imath
Milestone: 7.0.0 Priority: strategic
Severity: normal Version:
Component: Groups Keywords: has-patch
Cc: alexlii1971@…


Now that we have Group Types in #6784, let's make it easier for Site Admins/Builders to create any number of Group Types in the admin area.

Change History (22)

#1 @DJPaul
8 years ago

  • Priority changed from normal to strategic

#2 @mercime
8 years ago

#7180 All Group Types UI
#7175 Display and filter by group type on Dashboard > Groups

This ticket was mentioned in Slack in #buddypress by tw2113. View the logs.

8 years ago

#4 @dcavins
8 years ago

This is an interesting addition, and something I would like to work on.

Before getting started, though, I have a question about how we'd store these new items. At the moment, member and group types refer to taxonomy terms behind the scenes, but are made active by being registered at load via code hooked to the bp_groups_register_group_types action. ("Active" types are added to buddypress()->groups->types.)

So, it'd be relatively straightforward to add a taxonomy-like interface to add/remove the actual types as terms, but what strategy do we want to take to register these new terms at load? Are we wanting to add them to a record in the options table (or similar), then add a query at load to see if there are any terms that need to be dynamically registered? Maybe we could use term meta for this, and identify the terms added via the interface as active (minimum supported WP version would have to be 4.4--we're at 4.2 now)?

@r-a-y and @boonebgorges have worked extensively on types; do either of you have thoughts about how to work with the registration piece?

Last edited 8 years ago by dcavins (previous) (diff)

#5 @boonebgorges
8 years ago

@dcavins We've had some discussion about this issue over at #7181 (in the context of Member Types, though the storage mechanism should be the same). I argued there for storing Dashboard-created types as CPTs. But it'd be great if you read over that thread, and tossed in your two cents.

This ticket was mentioned in Slack in #buddypress by boone. View the logs.

8 years ago

#8 @alexlii
8 years ago

  • Cc alexlii1971@… added
  • Version set to


I am really eager to this plugin, but from my view, it is most important to support group member users to filter groups by TYPES at frondend, and it would much great if it can support for sub-types, it would be much great experience for site users, for exameple:

Learning: math, physical, language....
Hobby: Movie, sports....

I know Buddypress does not support Category default, but if some plugin can do the similar thing, it would be much much great, any comments would be appreciated, thanks all.


#9 follow-up: @dcavins
8 years ago

Hi @alexlii, directory filtering by category is coming in 2.7. See #7210 for more info, or, better yet, check out the RC2:

#10 in reply to: ↑ 9 @alexlii
8 years ago

Great news, Great thanks,

I am glad to have a test of buddypress 2.7beta, and I have a question now:

I am running a Wordpress musites now, for now buddypress 2.6 is running on a sub domain site, question is whether I can up load buddypress 2.7 and let it run on another sub site?

I am new to Wordpress, any comment would be great appreciated!


Replying to dcavins:

Hi @alexlii, directory filtering by category is coming in 2.7. See #7210 for more info, or, better yet, check out the RC2:

#11 @DJPaul
6 years ago

  • Keywords trac-tidy-2018 added

We're closing this ticket because it has not received any contribution or comments for at least two years. We have decided that it is better to close tickets that are good ideas, which have not gotten (or are unlikely to get) contributions, rather than keep things open indefinitely. This will help us share a more realistic roadmap for BuddyPress with you.

Everyone very much appreciates the time and effort that you spent sharing your idea with us. On behalf of the entire BuddyPress team, thank you.

If you feel strongly that this enhancement should still be added to BuddyPress, and you are able to contribute effort towards it, we encourage you to re-open the ticket, or start a discussion about it in our Slack channel. Please consider that time has proven that good ideas without contributions do not get built.

For more information, see
or find us on Slack, in the #buddypress channel:

#12 @DJPaul
6 years ago

  • Milestone Awaiting Contributions deleted
  • Resolution set to maybelater
  • Status changed from new to closed

#13 @imath
4 years ago

  • Keywords has-patch added; trac-tidy-2018 removed
  • Milestone set to 7.0.0
  • Resolution maybelater deleted
  • Status changed from closed to reopened


A patch taking in charge this ticket's need has been added to #7181. Don't hesitate to read this comment about it. Here's a screenshot of how could look the Group Types Admin UI:

#14 @shawfactor
4 years ago

Looks great but will the groups type functionality also allow for a more generalised register_taxonomy for bp groups? I ask as there are many ways to classify groups and one dimension like group type although beneficial is often not enough.

It would be really great if it did, I currently use the BP groups taxo plugin from github to achieve this but is is buggy and does not handle query cars and some hi aspects.

I am also the author of the lh user taxonomies plugin in the repository for adding register_taxonomy to users.

#15 @imath
4 years ago

Hi @shawfactor,

One step at a time 😀. Let's first make sure this UI behaves the right way testing the patch/suggesting improvements to the patch.

As I'm the author of BP Groups Taxonomy, if you have improvements to suggest about it: don't hesitate to pull a request (PR) for it.

About your suggestion, I believe it's off topic with this ticket perimeter, so you should probably look for another ticket or post a new one. A good way to make things progress can be to suggest a patch in order to contribute to make it happen.

#16 @imath
4 years ago

In 12727:

BP Types: improve the BP Core Taxonomy API

  • Introduces the bp_insert_term() function to save a BP Type into the database.
  • Introduces the bp_get_terms() function to retrieve BP Types from the database.
  • Introduces the bp_delete_term() function to remove a BP Type from the database.

Props mercime, DJPaul, dcavins, boonebgorges, tw2113, sbrajesh

See #7179
See #7181

#17 @imath
4 years ago

In 12728:

BP Types: introduce type metadata registration & add a Member type one

  • Introduces the bp_register_type_meta() function to register metadata for the Type taxonomies.
  • Introduces the bp_get_type_metadata_schema() to get common to all types metadata properties.
  • Adds the bp_register_type_metadata hook. Hook to it to register the Member type metadata.
  • Introduces the bp_get_default_taxonomies() to list the BuddyPress default taxonomies (BP Email & Member Type taxonomies).
  • Improves bp_register_default_taxonomies() so that it use the previous point new function.
  • Adds labels and arguments to the Member Type taxonomy.
  • Introduces the bp_get_taxonomy_common_args() to retrieve common BP Taxonomy arguments.
  • Introduces the bp_get_email_tax_type_args() & bp_get_member_type_tax_args() so that the BP Email & the Member type taxonomies use it to retrieve its arguments enjoying the previous point new function.

Props mercime, DJPaul, dcavins, boonebgorges, tw2113, sbrajesh

See #7179
See #7181

#18 @imath
4 years ago

In 12729:

BP Types: merge BP Types saved in DB with the ones registered by code

  • Introduces the bp_get_taxonomy_types() to merge types saved into the database with the types registered by code. It's now possible to edit all properties of the registered by code types except for the type's slug which needs to be unique.
  • Caches these merged types.
  • Introduces the bp_get_member_types_registered_by_code() to only get member types registered by code.
  • Updates the test_bp_get_member_type_should_not_return_unregistered_types() unit test to test_bp_get_registered_by_code_member_type_should_not_return_unregistered_types() to check the previous point new function.
  • Introduces the bp_update_type_metadata() function to update a type's metadata.

Props mercime, DJPaul, dcavins, boonebgorges, tw2113, sbrajesh

See #7179
See #7181

#19 @imath
4 years ago

In 12730:

BP Types: make it possible to manage BP Types from the WP Admin

  • Introduces functions to handle BP Types insertion, modification and deletion.
  • Introduces a new JavaScript file to customize the default WP Terms Administration screens.
  • Introduces the BP_Admin_Types class to make it possible to manage any BP Types.
  • Adds the Member type's Administration screens.

Props mercime, DJPaul, dcavins, boonebgorges, tw2113, sbrajesh

See #7179
Fixes #7181

#20 @imath
4 years ago

  • Owner set to imath
  • Resolution set to fixed
  • Status changed from reopened to closed

In 12731:

BP Types: add functions to generate the Group types WP Admin screens

  • Adds labels and arguments to the Group Type taxonomy.
  • Adds the Group type's Administration screens.
  • Introduces the bp_groups_register_group_type_taxonomy() function to register the Group type's taxonomy and stop doing it from the BP_Groups_Component::register_taxonomies() method.
  • Introduces the bp_get_group_type_metadata_schema() to add custom metadata for the Group type's taxonomy.
  • Introduces the bp_get_group_types_registered_by_code() to only get Group types registered by code.
  • Stops using the hardcoded bp_group_type identifier in favor of the filterable bp_get_group_type_tax_name() function.
  • Updates the test_groups_get_type_should_not_return_unregistered_types() unit test to test_groups_registered_by_code_group_type_should_not_return_unregistered_types() to check the previous point new function.

Props mercime, DJPaul, dcavins, boonebgorges

Fixes #7179

#21 @johnjamesjacoby
3 years ago

In 12775:

Group/Member Types: Capitalize "types" in submenu page & titles.

This commit ensures that title case is employed in areas of the WordPress admin UI where it is expected to be.

See #7179, #7181.

#22 @johnjamesjacoby
3 years ago

In 12776:

Group/Member Types: More string changes.

This commit includes the following code changes:

  • Change case of strings to match how WordPress core labels are cased
  • Reorder schema so singular is before plural (see: order of adjectives)
  • Adds missing taxonomy labels for core functionalities that could be activated or used later (hierarchy, popularity, etc...)
  • Simplifies all verbiage, to be more concise without sacrificing accuracy or descriptiveness (removes example URLs, encoded quotes, etc...)
  • Remove "member" references from default strings, and re-add them back in using member-specific variants to match how groups works
  • Related inline documentation

Together, these changes bring both Group and Member types closer in readability and usability to other taxonomies, making them feel a little bit more familiar, while also keeping strings within 2 lines tall on most viewport sizes, and hopefully making them easier to understand for users who are new to these features.

See #7179, #7181.

Note: See TracTickets for help on using tickets.