Skip to content

Instantly share code, notes, and snippets.

View sbrajesh's full-sized avatar

Brajesh Singh sbrajesh

View GitHub Profile
@sbrajesh
sbrajesh / hide-subscribers.php
Last active March 14, 2024 23:27
Hide Subscriber Users from BuddyPress member Directory
add_action('bp_ajax_querystring','bpdev_exclude_users',20,2);
function bpdev_exclude_users($qs=false,$object=false){
//list of users to exclude
if($object!='members')//hide for members only
return $qs;
$excluded_user=join(',',bpdev_get_subscriber_user_ids());//comma separated ids of users whom you want to exclude
@sbrajesh
sbrajesh / disallow-special-characters-in-buddypress-user-name
Created September 28, 2023 08:35
Disallows special characters in BuddyPress username
/**
* Disallow special characters in BuddyPres username.
*/
add_filter( 'bp_core_validate_user_signup', function ( $results ) {
if ( empty( $results ) || empty( $results['errors'] ) ) {
return $results;
}
$username = $results['user_name'];
@sbrajesh
sbrajesh / buddypress-limit-characters-in-group-description.php
Created August 25, 2023 21:15
Limits the number of characters allowed in BuddyPress Group description
// For Group creation.
add_action( 'groups_action_sort_creation_steps', function () {
$allowed_length = 225; // how may characters are allowed?
$step = wp_unslash( bp_action_variable( 1 ) );
if ( empty( $_POST['save'] ) ) {
return;
}
@sbrajesh
sbrajesh / member-types-field-options-sort.php
Created August 8, 2023 09:44
custom sorting BuddyPress member types in the member type field by their creation order in member types pro
// custom sorting of member types on registration page
// by the creation order in member types pro plugin.
add_filter( 'bp_xprofile_member_type_field_allowed_types', function ( $member_types, $registered_types ) {
if ( empty( $member_types ) || ! function_exists( 'bpmtp_get_active_member_type_entries' ) ) {
return $member_types;
}
// find all our active types(Member Types Pro plugin)
$active_type_objects = bpmtp_get_active_member_type_entries();
// sort by post_id(it is similar to creation order)
@sbrajesh
sbrajesh / bp-required-profile-field.php
Created August 27, 2018 08:35
Fore completion of BuddyPress Required Field
class BuddyDev_Profile_Field_Completion_Helper {
/**
* Show notice to user?
*
* @var bool
*/
private $show_notice = true;
add_filter( 'bp_core_get_active_member_count', function ( $count ) {
// protect from errro if plugin is disabled.
if ( ! class_exists( 'BPMTP_Member_Types_Pro' ) ) {
return $count;
}
// optimize.
$current_count = get_transient( 'bpmtp_all_active_members' );
if ( false !== $current_count ) {
@sbrajesh
sbrajesh / buddypress-xprofile-field-sum.php
Created September 24, 2021 08:18
Calculate sum of given BuddyPress Xprofile field for all the user on the site
/**
* Shortcode to sum all the values of the given xprofile field.
*
* @param int|string $field field id or name.
*
* Example 1:- Total Cows owned by our members [xprofile-field-sum field="Number of Cows you Own"]
* Example 2:- Total Cows owned by our members [xprofile-field-sum field=32]
*/
add_shortcode( 'xprofile-field-sum', function ( $atts = array(), $content = '' ) {
@sbrajesh
sbrajesh / bp-user-redirect.php
Created August 11, 2019 21:56
Redirect BuddyPress User to their activity instead of home page
/**
* Redirect users to login if not not logged, otherwise, redirect to user activity.
*/
function buddydev_custom_user_home_page() {
if ( ! is_user_logged_in() ) {
bp_core_redirect( wp_login_url( site_url( '/' ) ) );
}
@sbrajesh
sbrajesh / bp-custom.php
Created February 27, 2019 05:17
Empty bp-custom.php for your own usage
<?php
// your php custom code goes below this line.
@sbrajesh
sbrajesh / same-gender-user-visibility-buddypress.php
Created December 14, 2020 21:57
BuddyPress same gender users visibility
<?php
/**
* Filters Users based on Gender. Make sure only users of same genders are visible.
*/
class BuddyDev_Same_Gender_Based_Member_Filter {
/**
* Boot
*
* @return BuddyDev_Same_Gender_Based_Member_Filter