wppaste
WordPress

WP_Widget_Recent_Comments

Since
2.8.0
Source
wp-includes/widgets/class-wp-widget-recent-comments.php:17
Core class used to implement a Recent Comments widget.

Compatibility

WordPress
since 2.8.0
  • 6.7.7
  • 6.8.8
  • 6.9.7
  • 7.0.4
  • 7.1.0

Present in every tracked release (6.7.7 to 7.1.0).

Hooks and filters fired · 4

Every hook that fires from inside WP_Widget_Recent_Comments, in the order it appears in the class, grouped by the method that fires it.

Methods · 6

  • __construct()Sets up a new Recent Comments widget instance.
  • recent_comments_style()Outputs the default styles for the Recent Comments widget.
  • widget()Outputs the content for the current Recent Comments widget instance.
  • update()Handles updating settings for the current Recent Comments widget instance.
  • form()Outputs the settings form for the Recent Comments widget.
  • flush_widget_cache()Flushes the Recent Comments widget cache.

Source code

class WP_Widget_Recent_Comments extends WP_Widget { 	/**	 * Sets up a new Recent Comments widget instance.	 *	 * @since 2.8.0	 */	public function __construct() {		$widget_ops = array(			'classname'                   => 'widget_recent_comments',			'description'                 => __( 'Your site&#8217;s most recent comments.' ),			'customize_selective_refresh' => true,			'show_instance_in_rest'       => true,		);		parent::__construct( 'recent-comments', __( 'Recent Comments' ), $widget_ops );		$this->alt_option_name = 'widget_recent_comments'; 		if ( is_active_widget( false, false, $this->id_base ) || is_customize_preview() ) {			add_action( 'wp_head', array( $this, 'recent_comments_style' ) );		}	} 	/**	 * Outputs the default styles for the Recent Comments widget.	 *	 * @since 2.8.0	 */	public function recent_comments_style() {		/**		 * Filters the Recent Comments default widget styles.		 *		 * @since 3.1.0		 *		 * @param bool   $active  Whether the widget is active. Default true.		 * @param string $id_base The widget ID.		 */		if ( ! current_theme_supports( 'widgets' ) // Temp hack #14876.			|| ! apply_filters( 'show_recent_comments_widget_style', true, $this->id_base ) ) {			return;		} 		$type_attr = current_theme_supports( 'html5', 'style' ) ? '' : ' type="text/css"'; 		printf(			'<style%s>.recentcomments a{display:inline !important;padding:0 !important;margin:0 !important;}</style>',			$type_attr		);	} 	/**	 * Outputs the content for the current Recent Comments widget instance.	 *	 * @since 2.8.0	 * @since 5.4.0 Creates a unique HTML ID for the `<ul>` element	 *              if more than one instance is displayed on the page.	 *	 * @param array $args     Display arguments including 'before_title', 'after_title',	 *                        'before_widget', and 'after_widget'.	 * @param array $instance Settings for the current Recent Comments widget instance.	 */	public function widget( $args, $instance ) {		static $first_instance = true; 		if ( ! isset( $args['widget_id'] ) ) {			$args['widget_id'] = $this->id;		} 		$output = ''; 		$default_title = __( 'Recent Comments' );		$title         = ( ! empty( $instance['title'] ) ) ? $instance['title'] : $default_title; 		/** This filter is documented in wp-includes/widgets/class-wp-widget-pages.php */		$title = apply_filters( 'widget_title', $title, $instance, $this->id_base ); 		$number = ( ! empty( $instance['number'] ) ) ? absint( $instance['number'] ) : 5;		if ( ! $number ) {			$number = 5;		}

Changelog

Introduced in 2.8.0. Unchanged from 6.7.7 through 7.1.0.

  1. 6.7.7
  2. 6.8.8
  3. 6.9.7
  4. 7.0.4
  5. 7.1.0

Signature, return type and hooks compared across 5 parsed releases.

About this page

Parsed data
Generated from the wordpress-develop 6.9.7 tag, from src/wp-includes/widgets/class-wp-widget-recent-comments.php, and regenerated for each WordPress release so it tracks the code rather than a snapshot of it.
Corrections
Something wrong on this page? Report it and it gets fixed in the next regeneration.