BuddyDev

Search

Replies

  • Keymaster
    (BuddyDev Team)
    Posts: 24985
    Brajesh Singh on in reply to: [Resolved] Loop for member types #577

    Hi eGuard,
    Here is an example function

    
    
    function buddydev_custom_get_users_by_member_types( $ids = array() ) {
    		
    	$ids = wp_parse_id_list( $ids );
    	
    	if( ! $ids ) {
    		return ;
    	}
    	
    	$args = array(
    		'user_ids'			=> $ids,
    		'populate_extras'	=> true, //it will fetch names etc and cache member types
    	);
    	
    	$user_query = new BP_User_Query( $args );
    	
    	$users = $user_query->results;
    	$user_by_types = array();//multidimensional assay
    	//an Arr of WP_User objects with some added details like last_activity, latest_update etc
    	foreach ( $users as $user ) {
    		
    		$member_type = bp_get_member_type( $user->ID );
    		if( ! $member_type ) {
    			continue;
    		}
    		
    		$user_by_types[$member_type][] = $user->ID;
    		
    	}
    	
    	print_r( $user_by_types );
    	
    }
    
    

    And you ca call it like this

    
    <?php buddydev_custom_get_users_by_member_types( '1,2,3,4,5,6,7,8');?>
    

    Hope that helps you.

  • Keymaster
    (BuddyDev Team)
    Posts: 24985
    Brajesh Singh on in reply to: [Resolved] Prevent subscribers from uploading images? #576

    Hi A . Rhein,
    I am sorry, That was a mistake in my part.

    I forgot to put the function we are calling.
    Please add this snippet too to your bp-custom.php

    
    function buddydev_is_above_subscriber() {
    	
    	if (  current_user_can( 'delete_posts' ) ) {
    		return true;
    	}
    	
    	return false;
    }
    
    

    Now, that will work for sure.

  • Keymaster
    (BuddyDev Team)
    Posts: 24985

    Hi Lukas,
    Please put the following code in your bp-custom.php or in your functions.php

    
    add_filter( 'bpajaxr_is_auto_activation_mode', '__return_false' );
    

    That will do it.

  • Keymaster
    (BuddyDev Team)
    Posts: 24985

    Hi Steve,
    I have updated the Rate Limit User activity plugin and now it works fine with BuddyPress Activity AS wire plugin.

    If you are using BuddyDev dashboard plugin, you can directly update from your plugins page.
    Otherwise, please download from here

    https://buddydev.com/plugins/bp-rate-limit-user-activity/

    and update.

    Please do let me know if that works for you or not?

  • Keymaster
    (BuddyDev Team)
    Posts: 24985

    Hi Steve,
    Sorry about the delay.

    I tested these two plugins together and here is what i found.

    When rate limiter plugin is active, the BuddyPress Activity as wire plugin stops working. Other than that, public notifications etc was working fine for me.

    Is that the case for you too? I am working on a compatibility fix right now and will have another update for you soon.

  • Keymaster
    (BuddyDev Team)
    Posts: 24985
    Brajesh Singh on in reply to: [Resolved] Open question: member profile vs account #566

    You are most welcome 🙂

  • Keymaster
    (BuddyDev Team)
    Posts: 24985

    Hi Leigh,
    At the moment please put the file in bp-profile-visibility/languages directory in plugin. This is something remaining from our past code. We are updating all our plugins to use the WordPress languages dir as fallback and in future.

    We will post the changelog when the next version comes.
    Sorry for the trouble. Please make sure to keep a backup copy of the languages file safe for future use.

  • Keymaster
    (BuddyDev Team)
    Posts: 24985
    Brajesh Singh on in reply to: [Resolved] Loop for member types #563

    Hi,
    Welcome to BuddyDev support forum.

    1. Do you need ids or just the count? If you need just the count here is a function with example to do that

    
    
    function buddydev_get_member_types_count( ) {
    	
    	
    	$member_types = get_terms( 'bp_member_type', array(
    		'fields'		=> 'all',
    		'hide_empty'	=> false
    	));
    	
    	if( ! $member_types ) {
    		return array();
    	}
    	
    	$counts = array();
    	foreach ( $member_types as $member_type ) {
    		$counts[ $member_type->slug] = $member_type->count;
    	}
    
    	
    	return $counts;
    }
    
    

    You can put the above code in your bp-custom.php or theme’s functions.php.

    And use the following code to show the counts

    
    
    //example usage in your file
    $counts = buddydev_get_member_types_count();
    
    echo "Total students:" . $counts['student'];
    
    

    Please do note, if you are on multisite, this code will only work on main site.

    About settings the default member type, yes.

    
    
    add_action( 'bp_core_activated_user', 'buddydev_set_default_member_type', 1 );//high priority
    
    function buddydev_set_default_member_type( $user_id ) {
    	
    	bp_set_member_type( $user_id, 'student' );
    }
    
    

    Please put that code in your bp-custom.php and that should take care of the default assignment.

    Hope that helps.

  • Keymaster
    (BuddyDev Team)
    Posts: 24985

    Hi R.O.
    Are you refrerring to the WP Multi Network plugin by John James Jacoby?

  • Keymaster
    (BuddyDev Team)
    Posts: 24985

    Hi Maelga,
    Thank you for asking.

    1. My plugin stores the member type and not the member type label. Member type label have display significance, but under the hood it is the actual member type that matters. The plugin should handle the display properly in most of the case.

    If you want to display in in standard way, you can get the registered member type object and then fetch the singular/plural labels.

    About the radio, are you referring to the member type plugin? I am sorry but I haven’t provided a way for that, you will need to edit that plugin and replace select/option with input type radio. That will do it for now. In future, i will be happy to add an option to show it as radio or select box.