WP_Customize_Manager::add_panel( WP_Customize_Panel|string $id, array $args = array() ): WP_Customize_Panel
Adds a customize panel.
Contents
Description
See also
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.More Arguments from WP_Customize_Panel::__construct( ... $args )
Array of properties for the new Panel object.
priority
intPriority of the panel, defining the display order of panels and sections. Default 160.capability
stringCapability required for the panel.
Defaultedit_theme_options
.theme_supports
mixed[]Theme features required to support the panel.title
stringTitle of the panel to show in UI.description
stringDescription to show in the UI.type
stringType of the panel.active_callback
callableActive callback.
Default:
array()
Return
WP_Customize_Panel The instance of the panel that was added.
Source
File: wp-includes/class-wp-customize-manager.php
.
View all references
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;
}
Changelog
Version | Description |
---|---|
4.5.0 | Return added WP_Customize_Panel instance. |
4.0.0 | Introduced. |
User Contributed Notes
You must log in before being able to contribute a note or feedback.
Example usage:
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:
Now your panel will not be hidden when the customizer is fully loaded.