Forum Replies Created

Viewing 2 posts - 1 through 2 (of 2 total)
  • Author
  • in reply to: Display only opposite gender #77302
     paoloeuvrard
    Participant

    Hi Laura,
    kindly discard my last message. The issue was with the bp-custom.php file.

    I added your code second to another one with another <?php … ?> instance, which caused it to break.
    Everything’s fine now, except that I had to invert the values you published as follow:

    if ( $sex == ‘Man’ )
    $query = “SELECT user_id FROM {$wpdb->prefix}bp_xprofile_data WHERE field_id = 3 AND value = ‘Woman'”;
    else
    $query = “SELECT user_id FROM {$wpdb->prefix}bp_xprofile_data WHERE field_id = 3 AND value = ‘Man'”;

    Thanks, you made my day anyway.
    Cheers,
    Paolo

    in reply to: Display only opposite gender #77300
     paoloeuvrard
    Participant

    Hello Laura,

    I have the same problem, the code doesn’t work. Ihave an Id of 3 as you can see in the attached file.

    It blocks my logins, or once it’s on I can’t log in wp-admin. And my members page is blank.

    Any idea?

    Thank you very much if you can help.

    Cheers,
    Paolo

    I got

    <?php
    class BP_Custom_User_Ids {

    private $custom_ids = array();

    public function __construct() {

    $this->custom_ids = $this->get_custom_ids();

    add_action( ‘bp_pre_user_query_construct’, array( $this, ‘custom_members_query’ ), 1, 1 );
    add_filter( ‘bp_get_total_member_count’, array( $this, ‘custom_members_count’ ), 1, 1 );

    }

    private function get_custom_ids() {
    global $wpdb;

    //figure out if the logged-in user is male or female
    $sex = xprofile_get_field_data( 3, bp_loggedin_user_id() );

    if ( $sex == ‘Man’ )
    $query = “SELECT user_id FROM {$wpdb->prefix}bp_xprofile_data WHERE field_id = 3 AND value = ‘Man'”;
    else
    $query = “SELECT user_id FROM {$wpdb->prefix}bp_xprofile_data WHERE field_id = 3 AND value = ‘Woman'”;

    $custom_ids = $wpdb->get_col( $query );

    return $custom_ids;
    }

    function custom_members_query( $query_array ) {

    $query_array->query_vars[‘include’] = $this->custom_ids;

    }

    function custom_members_count ( $count ) {

    $new_count = count( $this->custom_ids );
    return $new_count;

    }
    }

    function custom_user_ids( ) {

    new BP_Custom_User_Ids ();

    }

    add_action( ‘bp_before_directory_members’, ‘custom_user_ids’ );
    ?>

    Attachments:
    You must be logged in to view attached files.
Viewing 2 posts - 1 through 2 (of 2 total)

Log in with your credentials

Forgot your details?