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

Add a customize panel.


Description Description

See also See also


Top ↑

Parameters Parameters

$id

(WP_Customize_Panel|string) (Required) Customize Panel object, or ID.

$args

(array) (Optional) Array of properties for the new Panel object. See WP_Customize_Panel::__construct() for information on accepted arguments.

Default value: array()


Top ↑

Return Return

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


Top ↑

Source Source

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;
	}


Top ↑

Changelog Changelog

Changelog
Version Description
4.5.0 Return added WP_Customize_Panel instance.
4.0.0 Introduced.

Top ↑

User Contributed Notes User Contributed Notes

  1. Skip to note 2 content
    Contributed by Ben

    If you are wondering why your panel is visible but disappears after the customizer is fully loaded, it is probably because you added the ‘customizer_register’ action only when is_admin() is true.

    Do this instead:

    if ( is_admin() || is_customize_preview() ) {
        add_action( 'customize_register', 'wpdocs_your_customize_register' );
    }
    

    Now your panel will not be hidden when the customizer is fully loaded.

You must log in before being able to contribute a note or feedback.