• Knowledge Base
    • All Articles
    • BuddyBoss Platform
    • BuddyBoss Theme
    • BuddyBoss App
    • Integrations
    • Advanced Setup
    • Troubleshooting
    • Release Notes
      • BuddyBoss Platform
      • BuddyBoss Platform Pro
      • BuddyBoss Theme
      • BuddyBoss App
      • BuddyBoss App Plugin
      • Other Products
  • Developers
    • Developer Tutorials
      • Web Development
      • App Development
    • Code Reference
      • Functions
      • Hooks
      • Classes
      • Methods
      • Commands
      • App Codex
    • REST API
      • BuddyBoss Platform
      • BuddyBoss App
    • Font Cheatsheet
    • Github Project
  • Roadmap
  • Go to BuddyBoss
    Contact Support
    Filter
    • Knowledge Base
      • All Articles
      • BuddyBoss Platform
      • BuddyBoss Theme
      • BuddyBoss App
      • Integrations
      • Advanced Setup
      • Troubleshooting
      • Release Notes
        • BuddyBoss Platform
        • BuddyBoss Platform Pro
        • BuddyBoss Theme
        • BuddyBoss App
        • BuddyBoss App Plugin
        • Other Products
    • Developers
      • Developer Tutorials
        • Web Development
        • App Development
      • Code Reference
        • Functions
        • Hooks
        • Classes
        • Methods
        • Commands
        • App Codex
      • REST API
        • BuddyBoss Platform
        • BuddyBoss App
      • Font Cheatsheet
      • Github Project
    • Roadmap
    • Go to BuddyBoss
    Filter
    Filter

    Contents

    • Description
    • Parameters
    • Return
    • Source
    • Related
    Code Reference Classes BP_REST_Account_Settings_Options_Endpoint BP_REST_Account_Settings_Options_Endpoint::update_profile_fields()

    BP_REST_Account_Settings_Options_Endpoint::update_profile_fields( WP_REST_Request $request )

    Update profile fields.

    Description

    • from bp_xprofile_action_settings().

    Parameters

    $request

    (WP_REST_Request) (Required) Full details about the request.

    Return

    (array|bool|void)

    Source

    File: bp-settings/classes/class-bp-rest-account-settings-options-endpoint.php

    	public function update_profile_fields( $request ) {
    		$post_fields = $request->get_param( 'fields' );
    
    		add_filter( 'bp_displayed_user_id', array( $this, 'bp_rest_get_displayed_user' ), 999 );
    
    		if ( ! empty( $post_fields ) ) {
    			// Save the visibility settings.
    			foreach ( $post_fields as $field => $value ) {
    
    				$field_id = (int) str_replace( 'field_', '', $field );
    
    				if ( ! empty( $field_id ) && is_int( $field_id ) && ! empty( $value ) ) {
    					$visibility_level = $value;
    					xprofile_set_field_visibility_level( $field_id, bp_displayed_user_id(), $visibility_level );
    				}
    			}
    		}
    
    		/**
    		 * Fires after saving xprofile field visibilities.
    		 *
    		 * @since 0.1.0
    		 */
    		do_action( 'bp_xprofile_settings_after_save' );
    
    		remove_filter( 'bp_displayed_user_id', array( $this, 'bp_rest_get_displayed_user' ), 999 );
    
    		return array(
    			'error'  => false,
    			'notice' => false,
    		);
    	}
    

    Expand full source code Collapse full source code

    Related

    Uses

    Uses
    Uses Description
    bp-xprofile/bp-xprofile-functions.php: xprofile_set_field_visibility_level()

    Set the visibility level for this field.

    bp-xprofile/screens/settings-profile.php: bp_xprofile_settings_after_save

    Fires after saving xprofile field visibilities.

    bp-core/bp-core-template.php: bp_displayed_user_id()

    Get the ID of the currently displayed user.

    Used By
    Used By Description
    bp-settings/classes/class-bp-rest-account-settings-options-endpoint.php: BP_REST_Account_Settings_Options_Endpoint::update_item()

    Update Account Settings options.

    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.

    © 2023 • BuddyBoss