没有这样的事情$bp->get_var. 尝试使用$wpdb->get_var.
或者试试这个:
function validate_user_signup($result) {
global $wpdb;
$result = $wpdb->get_var("SELECT user_id FROM wp_bp_xprofile_data WHERE value = \'{$_POST[\'field_2\']}\'");
if( $result != NULL ){
$new_error = new WP_Error();
$new_error->add( \'field_2\', __( \'Phone number is already in use.\', \'buddypress\' ) );
$result[\'errors\'] = $new_error;
}
return $result;
}
add_filter(\'bp_core_validate_user_signup\', \'validate_user_signup\', 10, 1);