WP_Customize_Widgets::is_wide_widget( string $widget_id ): bool

Determines whether the widget is considered “wide”.

Description

Core widgets which may have controls wider than 250, but can still be shown in the narrow Customizer panel. The RSS and Text widgets in Core, for example, have widths of 400 and yet they still render fine in the Customizer panel.

This method will return all Core widgets as being not wide, but this can be overridden with the ‘is_wide_widget_in_customizer’ filter.

Parameters

$widget_idstringrequired
Widget ID.

Return

bool Whether or not the widget is a "wide" widget.

Source

public function is_wide_widget( $widget_id ) {
	global $wp_registered_widget_controls;

	$parsed_widget_id = $this->parse_widget_id( $widget_id );
	$width            = $wp_registered_widget_controls[ $widget_id ]['width'];
	$is_core          = in_array( $parsed_widget_id['id_base'], $this->core_widget_id_bases, true );
	$is_wide          = ( $width > 250 && ! $is_core );

	/**
	 * Filters whether the given widget is considered "wide".
	 *
	 * @since 3.9.0
	 *
	 * @param bool   $is_wide   Whether the widget is wide, Default false.
	 * @param string $widget_id Widget ID.
	 */
	return apply_filters( 'is_wide_widget_in_customizer', $is_wide, $widget_id );
}

Hooks

apply_filters( ‘is_wide_widget_in_customizer’, bool $is_wide, string $widget_id )

Filters whether the given widget is considered “wide”.

Changelog

VersionDescription
3.9.0Introduced.

User Contributed Notes

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