WP_Customize_Manager::add_panel( WP_Customize_Panel|string $id, array $args = array() )

Add a customize panel.



(Required) Customize Panel object, or Panel ID.


(Optional) Array of properties for the new Panel object.

  • 'priority'
    (int) Priority of the panel, defining the display order of panels and sections. Default 160.
  • 'capability'
    (string) Capability required for the panel. Default edit_theme_options
  • 'theme_supports'
    (string|array) Theme features required to support the panel.
  • 'title'
    (string) Title of the panel to show in UI.
  • 'description'
    (string) Description to show in the UI.
  • 'type'
    (string) Type of the panel.
  • 'active_callback'
    (callable) Active callback.

Default value: array()


(WP_Customize_Panel) The instance of the panel that was added.


File: wp-includes/class-wp-customize-manager.php

	public function add_panel( $id, $args = array() ) {
		if ( $id instanceof WP_Customize_Panel ) {
			$panel = $id;
		} else {
			$panel = new WP_Customize_Panel( $this, $id, $args );

		$this->panels[ $panel->id ] = $panel;
		return $panel;


Version Description
WP-4.5.0 Return added WP_Customize_Panel instance.
WP-4.0.0 Introduced.