WP_Widget::display_callback( array $args, int|array $widget_args = 1 )
Generates the actual widget content (Do NOT override).
Description
Finds the instance and calls WP_Widget::widget().
Parameters
-
$args
array Required -
Display arguments. See WP_Widget::widget() for information on accepted arguments.
More Arguments from WP_Widget::widget( ... $args )
Display arguments including'before_title'
,'after_title'
,'before_widget'
, and'after_widget'
. -
$widget_args
int|array Optional -
Internal order number of the widget instance, or array of multi-widget arguments.
number
intNumber increment used for multiples of the same widget.
Default:
1
Source
File: wp-includes/class-wp-widget.php
.
View all references
public function display_callback( $args, $widget_args = 1 ) {
if ( is_numeric( $widget_args ) ) {
$widget_args = array( 'number' => $widget_args );
}
$widget_args = wp_parse_args( $widget_args, array( 'number' => -1 ) );
$this->_set( $widget_args['number'] );
$instances = $this->get_settings();
if ( isset( $instances[ $this->number ] ) ) {
$instance = $instances[ $this->number ];
/**
* Filters the settings for a particular widget instance.
*
* Returning false will effectively short-circuit display of the widget.
*
* @since 2.8.0
*
* @param array $instance The current widget instance's settings.
* @param WP_Widget $widget The current widget instance.
* @param array $args An array of default widget arguments.
*/
$instance = apply_filters( 'widget_display_callback', $instance, $this, $args );
if ( false === $instance ) {
return;
}
$was_cache_addition_suspended = wp_suspend_cache_addition();
if ( $this->is_preview() && ! $was_cache_addition_suspended ) {
wp_suspend_cache_addition( true );
}
$this->widget( $args, $instance );
if ( $this->is_preview() ) {
wp_suspend_cache_addition( $was_cache_addition_suspended );
}
}
}
Hooks
-
apply_filters( 'widget_display_callback',
array $instance ,WP_Widget $widget ,array $args ) -
Filters the settings for a particular widget instance.
Changelog
Version | Description |
---|---|
2.8.0 | Introduced. |