WordPress Version: 5.4
/**
* Displays or retrieves pagination links for the comments on the current post.
*
* @see paginate_links()
* @since 2.7.0
*
* @global WP_Rewrite $wp_rewrite WordPress rewrite component.
*
* @param string|array $args Optional args. See paginate_links(). Default empty array.
* @return void|string|array Void if 'echo' argument is true and 'type' is not an array,
* or if the query is not for an existing single post of any post type.
* Otherwise, markup for comment page links or array of comment page links,
* depending on 'type' argument.
*/
function paginate_comments_links($args = array())
{
global $wp_rewrite;
if (!is_singular()) {
return;
}
$page = get_query_var('cpage');
if (!$page) {
$page = 1;
}
$max_page = get_comment_pages_count();
$defaults = array('base' => add_query_arg('cpage', '%#%'), 'format' => '', 'total' => $max_page, 'current' => $page, 'echo' => true, 'type' => 'plain', 'add_fragment' => '#comments');
if ($wp_rewrite->using_permalinks()) {
$defaults['base'] = user_trailingslashit(trailingslashit(get_permalink()) . $wp_rewrite->comments_pagination_base . '-%#%', 'commentpaged');
}
$args = wp_parse_args($args, $defaults);
$page_links = paginate_links($args);
if ($args['echo'] && 'array' !== $args['type']) {
echo $page_links;
} else {
return $page_links;
}
}