xprofile_get_field_data( mixed $field, int $user_id, string $multi_format = 'array' )
Fetches profile data for a specific field for the user.
Description
When the field value is serialized, this function unserializes and filters each item in the array.
Parameters
- $field
-
(Required) The ID of the field, or the $name of the field.
- $user_id
-
(Required) The ID of the user.
- $multi_format
-
(Optional) How should array data be returned? 'comma' if you want a comma-separated string; 'array' if you want an array.
Default value: 'array'
Return
(mixed) The profile field data.
Source
File: bp-xprofile/bp-xprofile-functions.php
function xprofile_get_field_data( $field, $user_id = 0, $multi_format = 'array' ) { if ( empty( $user_id ) ) { $user_id = bp_displayed_user_id(); } if ( empty( $user_id ) ) { return false; } if ( is_numeric( $field ) ) { $field_id = $field; } else { $field_id = xprofile_get_field_id_from_name( $field ); } if ( empty( $field_id ) ) { return false; } $values = maybe_unserialize( BP_XProfile_ProfileData::get_value_byid( $field_id, $user_id ) ); if ( is_array( $values ) ) { $data = array(); foreach( (array) $values as $value ) { /** * Filters the field data value for a specific field for the user. * * @since BuddyPress 1.0.0 * * @param string $value Value saved for the field. * @param int $field_id ID of the field being displayed. * @param int $user_id ID of the user being displayed. */ $data[] = apply_filters( 'xprofile_get_field_data', $value, $field_id, $user_id ); } if ( 'comma' == $multi_format ) { $data = implode( ', ', $data ); } } else { /** This filter is documented in bp-xprofile/bp-xprofile-functions.php */ $data = apply_filters( 'xprofile_get_field_data', $values, $field_id, $user_id ); } return $data; }
Changelog
Version | Description |
---|---|
BuddyPress 1.0.0 | Introduced. |
Questions?
We're always happy to help with code or other questions you might have! Search our developer docs, contact support, or connect with our sales team.