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
-
(Required) Display arguments. See WP_Widget::widget() for information on accepted arguments.
- $widget_args
-
(Optional) Internal order number of the widget instance, or array of multi-widget arguments.
- 'number'
(int) Number increment used for multiples of the same widget.
Default value: 1
- 'number'
Source
File: wp-includes/class-wp-widget.php
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 ( array_key_exists( $this->number, $instances ) ) {
$instance = $instances[ $this->number ];
/**
* Filters the settings for a particular widget instance.
*
* Returning false will effectively short-circuit display of the widget.
*
* @since WP-2.8.0
*
* @param array $instance The current widget instance's settings.
* @param WP_Widget $this 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 );
}
}
}
Changelog
Version | Description |
---|---|
WP-2.8.0 | Introduced. |