Summery Summery

Traverses elements to create list from elements.

Syntax Syntax

Walker_Comment::display_element( WP_Comment $element, array $children_elements, int $max_depth, int $depth, array $args, string $output )

Description Description

This function is designed to enhance Walker::display_element() to display children of higher nesting levels than selected inline on the highest depth level displayed. This prevents them being orphaned at the end of the comment list.

Example: max_depth = 2, with 5 levels of nested content. 1 1.1 1.1.1 1.1.2 2 2.2

Parameters Parameters


(Required) Comment data object.


(Required) List of elements to continue traversing. Passed by reference.


(Required) Max depth to traverse.


(Required) Depth of the current element.


(Required) An array of arguments.


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

Source Source

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

	public function display_element( $element, &$children_elements, $max_depth, $depth, $args, &$output ) {
		if ( ! $element ) {

		$id_field = $this->db_fields['id'];
		$id       = $element->$id_field;

		parent::display_element( $element, $children_elements, $max_depth, $depth, $args, $output );

		 * If at the max depth, and the current element still has children, loop over those
		 * and display them at this level. This is to prevent them being orphaned to the end
		 * of the list.
		if ( $max_depth <= $depth + 1 && isset( $children_elements[ $id ] ) ) {
			foreach ( $children_elements[ $id ] as $child ) {
				$this->display_element( $child, $children_elements, $max_depth, $depth, $args, $output );

			unset( $children_elements[ $id ] );



Changelog Changelog

Version Description
2.7.0 Introduced.

See also See also


Leave a Reply