Constructor.
Description
Supplied $args override class property defaults.
If $args['settings'] is not defined, use the $id as the setting ID.
Parameters
$componentWP_Customize_Selective_Refreshrequired- Customize Partial Refresh plugin instance.
$idstringrequired- Control ID.
$argsarrayoptional- Array of properties for the new Partials object.
typestringType of the partial to be created.selectorstringThe jQuery selector to find the container element for the partial, that is, a partial’s placement.settingsstring[]IDs for settings tied to the partial. If undefined,$idwill be used.primary_settingstringThe ID for the setting that this partial is primarily responsible for rendering. If not supplied, it will default to the ID of the first setting.capabilitystringCapability required to edit this partial.
Normally this is empty and the capability is derived from the capabilities of the associated$settings.render_callbackcallableRender callback.
Callback is called with one argument, the instance of WP_Customize_Partial.
The callback can either echo the partial or return the partial as a string, or return false if error.container_inclusiveboolWhether the container element is included in the partial, or if only the contents are rendered.fallback_refreshboolWhether to refresh the entire preview in case a partial cannot be refreshed.
A partial render is considered a failure if the render_callback returns false.
Default:
array()
Source
public function __construct( WP_Customize_Selective_Refresh $component, $id, $args = array() ) {
$keys = array_keys( get_object_vars( $this ) );
foreach ( $keys as $key ) {
if ( isset( $args[ $key ] ) ) {
$this->$key = $args[ $key ];
}
}
$this->component = $component;
$this->id = $id;
$this->id_data['keys'] = preg_split( '/\[/', str_replace( ']', '', $this->id ) );
$this->id_data['base'] = array_shift( $this->id_data['keys'] );
if ( empty( $this->render_callback ) ) {
$this->render_callback = array( $this, 'render_callback' );
}
// Process settings.
if ( ! isset( $this->settings ) ) {
$this->settings = array( $id );
} elseif ( is_string( $this->settings ) ) {
$this->settings = array( $this->settings );
}
if ( empty( $this->primary_setting ) ) {
$this->primary_setting = current( $this->settings );
}
}
Changelog
| Version | Description |
|---|---|
| 4.5.0 | Introduced. |
User Contributed Notes
You must log in before being able to contribute a note or feedback.