Skip to content

Developer Reference

John James Jacoby edited this page Sep 18, 2026 · 2 revisions

Developer Reference

Core section IDs

  • profile
  • account
  • options
  • permissions
  • other when needed
  • sites on multisite

Section APIs

  • wp_user_profiles_sections() returns the registered sections.
  • wp_user_profiles_filter_sections() filters the registry by properties.
  • wp_user_profiles_get_section_hooknames() returns administration hook names for a section.
  • wp_user_profiles_get_file() identifies the parent administration file for the current context.
  • wp_user_profiles_get_admin_area_url() builds an edit URL across site, network, and user administration.
  • wp_is_profile_page() reports whether the current user is editing their own profile.

Important filters and actions

  • wp_user_profiles_sections
  • wp_user_profiles_filter_sections
  • wp_user_profiles_core_files
  • wp_user_profiles_add_meta_boxes
  • wp_user_profiles_add_{$section_id}_meta_boxes
  • wp_user_profiles_save_{$section_id}_section
  • wp_user_profiles_save
  • wp_user_profiles_user_supports
  • wp_user_profiles_show_other_section
  • wp_user_profiles_show_status
  • wp_user_profiles_admin_nav_html
  • wp_user_profiles_admin_subnav_html
  • wp_user_profiles_use_modern_styles
  • wp_user_profiles_get_admin_area_url

Optional modern styles

The wp_user_profiles_use_modern_styles filter controls the site-wide modern presentation and defaults to false. See Modern Profile Styles for screenshots and the opt-in example.

Metabox callback hooks

Bundled metabox callbacks fire {function_name}_before and {function_name}_after actions around their output. Prefer the section APIs when adding a distinct field group; use callback hooks only when content must be adjacent to a specific bundled metabox.

Saving data

Always check the selected user, current-user capability, section nonce, and field presence. Sanitize according to the destination field, report validation errors through the section's WordPress error flow, and avoid overwriting properties that were not submitted.

Clone this wiki locally