get_comment_pages_count() WordPress Function

The get_comment_pages_count() function is used to get the number of comment pages for a given post or page. This function is useful for paginating comments.

get_comment_pages_count( WP_Comment[] $comments = null, int $per_page = null, bool $threaded = null ) #

Calculates the total number of comment pages.


Parameters

$comments

(WP_Comment[])(Optional) Array of WP_Comment objects. Defaults to $wp_query->comments.

Default value: null

$per_page

(int)(Optional) Comments per page.

Default value: null

$threaded

(bool)(Optional) Control over flat or threaded comments.

Default value: null


Top ↑

Return

(int) Number of comment pages.


Top ↑

Source

File: wp-includes/comment.php

function get_comment_pages_count( $comments = null, $per_page = null, $threaded = null ) {
	global $wp_query;

	if ( null === $comments && null === $per_page && null === $threaded && ! empty( $wp_query->max_num_comment_pages ) ) {
		return $wp_query->max_num_comment_pages;
	}

	if ( ( ! $comments || ! is_array( $comments ) ) && ! empty( $wp_query->comments ) ) {
		$comments = $wp_query->comments;
	}

	if ( empty( $comments ) ) {
		return 0;
	}

	if ( ! get_option( 'page_comments' ) ) {
		return 1;
	}

	if ( ! isset( $per_page ) ) {
		$per_page = (int) get_query_var( 'comments_per_page' );
	}
	if ( 0 === $per_page ) {
		$per_page = (int) get_option( 'comments_per_page' );
	}
	if ( 0 === $per_page ) {
		return 1;
	}

	if ( ! isset( $threaded ) ) {
		$threaded = get_option( 'thread_comments' );
	}

	if ( $threaded ) {
		$walker = new Walker_Comment;
		$count  = ceil( $walker->get_number_of_root_elements( $comments ) / $per_page );
	} else {
		$count = ceil( count( $comments ) / $per_page );
	}

	return $count;
}


Top ↑

Changelog

Changelog
VersionDescription
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.

Show More
Show More