get_comment_pages_count() – Calculates the total number of comment pages.

You appear to be a bot. Output may be restricted

Description

Calculates the total number of comment pages.

Usage

$int = get_comment_pages_count( $comments, $per_page, $threaded );

Parameters

$comments
( WP_Comment[] ) optional – Optional. Array of WP_Comment objects. Defaults to `$wp_query->comments`.
$per_page
( int ) optional – Optional. Comments per page. Defaults to the value of comments_per_page query var, option of the same name, or 1 (in that order).
$threaded
( bool ) optional – Optional. Control over flat or threaded comments. Defaults to the value of thread_comments option.

Returns

int Number of comment pages.

Source

File name: wordpress/wp-includes/comment.php
Lines:

1 to 42 of 42
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;
}
 

 View on GitHub View on Trac