Walker_Comment::start_el() WordPress Method

The Walker_Comment::start_el() method is used to display a comment in the WordPress comment list. This method is called by theWalker_Comment::walk() method when walking through the comments to be displayed.

Walker_Comment::start_el( string $output, WP_Comment $data_object, int $depth, array $args = array(), int $current_object_id ) #

Starts the element output.


Description

Top ↑

See also


Top ↑

Parameters

$output

(string)(Required)Used to append additional content. Passed by reference.

$data_object

(WP_Comment)(Required)Comment data object.

$depth

(int)(Optional) Depth of the current comment in reference to parents. Default 0.

$args

(array)(Optional) An array of arguments.

Default value: array()

$current_object_id

(int)(Optional) ID of the current comment. Default 0.


Top ↑

Source

File: wp-includes/class-walker-comment.php

	public function start_el( &$output, $data_object, $depth = 0, $args = array(), $current_object_id = 0 ) {
		// Restores the more descriptive, specific name for use within this method.
		$comment = $data_object;

		$depth++;
		$GLOBALS['comment_depth'] = $depth;
		$GLOBALS['comment']       = $comment;

		if ( ! empty( $args['callback'] ) ) {
			ob_start();
			call_user_func( $args['callback'], $comment, $args, $depth );
			$output .= ob_get_clean();
			return;
		}

		if ( 'comment' === $comment->comment_type ) {
			add_filter( 'comment_text', array( $this, 'filter_comment_text' ), 40, 2 );
		}

		if ( ( 'pingback' === $comment->comment_type || 'trackback' === $comment->comment_type ) && $args['short_ping'] ) {
			ob_start();
			$this->ping( $comment, $depth, $args );
			$output .= ob_get_clean();
		} elseif ( 'html5' === $args['format'] ) {
			ob_start();
			$this->html5_comment( $comment, $depth, $args );
			$output .= ob_get_clean();
		} else {
			ob_start();
			$this->comment( $comment, $depth, $args );
			$output .= ob_get_clean();
		}

		if ( 'comment' === $comment->comment_type ) {
			remove_filter( 'comment_text', array( $this, 'filter_comment_text' ), 40 );
		}
	}


Top ↑

Changelog

Changelog
VersionDescription
5.9.0Renamed $comment to $data_object and $id to $current_object_id to match parent class for PHP 8 named parameter support.
2.7.0Introduced.

The content displayed on this page has been created in part by processing WordPress source code files which are made available under the GPLv2 (or a later version) license by theĀ Free Software Foundation. In addition to this, the content includes user-written examples and information. All material is subject to review and curation by the WPPaste.com community.