CSS Body Class for BuddyPress Group Moderators and Admins

By Posted in - BuddyPress & Wordpress plugin on May 8th, 2012 0 Comments

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. :)

Comments are closed.