I tend to use CSS to hide all sorts of things within the BuddyPress interface rather than unhooking functions. I find that it more quickly and flexibly accommodates my clients’ changing desires.
Today I needed to add a css body class for group moderators and admins. The goal was to hide the “Admin” button for moderators but display it for admins.
To pull it off, I added the following to my functions.php file:
// Add "bp-group-moderator" to body_class function if we are on a BuddyPress-generated page
add_filter('body_class','add_bp_group_moderator_body_classes');
function add_bp_group_moderator_body_classes($classes) {
if ( bp_group_is_mod() ):
// add 'bp-group-moderator' to the $classes array
$classes[] = 'bp-group-moderator';
// return the $classes array
return $classes;
else :
// do nothing
$classes[] = '';
// return the $classes array
return $classes;
endif;
}
// Add "bp-group-admin" to body_class function if we are on a BuddyPress-generated page
add_filter('body_class','add_bp_group_admin_body_classes');
function add_bp_group_admin_body_classes($classes) {
if ( bp_group_is_admin() ):
// add 'bp-group-admin' to the $classes array
$classes[] = 'bp-group-admin';
// return the $classes array
return $classes;
else :
// do nothing
$classes[] = '';
// return the $classes array
return $classes;
endif;
}
It works nicely!
I plan to release it as a plugin. Perhaps some day this will be in core. In general, I can never have too many body classes. 🙂
More posts from themightymo.com
How to fix the “Warning: Class ‘Automattic\WooCommerce\StoreApi\Routes” issue in WordPress + WooCommerce
Today when I visited a customer’s website, I saw an error similar to this: etc. After trying all sorts of troubleshooting, the solution ended up being simple. Download a fresh copy of WooCommerce from WordPress.org and FTP it up to the server, replacing the existing WooCommerce files. Problem solved. Isn’t that nice? Many thanks to…
How to CSS rainbow text
Here’s a bit of plain CSS that’ll create rainbow text on your WordPress site or anywhere, really.
How to Restore a Deleted Amazon S3 Bucket
I ran into a rather serious issue recently: a human on my team (me) intentionally (but accidentally) deleted an Amazon S3 bucket that was serving files to a WordPress site. The solution to the problem follows: Cry when you realize you cannot restore a deleted S3 bucket. Search your computer, your co-workers’ computers, your former…