get_next_comments_link()WP 2.7.1

Получает ссылку (тег A) на следующую страницу комментариев. Должна использоваться на странице записи.

Чтобы получить ссылку на предыдущую страницу комментариев, используйте get_previous_comments_link()

Работает на основе: get_comment_pages_count(), get_comments_pagenum_link()
1 раз — 0.00019 сек (быстро) | 50000 раз — 2.7 сек (быстро)
Хуки из функции

Возвращает

Строку|null. Если ссылка есть вернет HTML код ссылки (тег А).

Использование

get_next_comments_link( $label, $max_page );
$label(строка)
Анкор ссылки.
По умолчанию: '' ("Следующие комментарии →")
$max_page(число)
Всего страниц пагинации комментариев.
По умолчанию: 0 (значение get_comment_pages_count())

Примеры

0

#1 Получим ссылку на следующую страницу комментариев текущей записи

Допустим у записи 44 комментария и мы находимся на второй странице комментариев, тогда:

$link = get_next_comments_link();

/* $link будет равно
<a href="http://example.com/foo/comment-page-3#comments" >Следующие комментарии →</a>
*/

Заметки

  • Global. WP_Query. $wp_query WordPress Query object.

Список изменений

С версии 2.7.1 Введена.

Код get_next_comments_link() WP 6.4.3

function get_next_comments_link( $label = '', $max_page = 0 ) {
	global $wp_query;

	if ( ! is_singular() ) {
		return;
	}

	$page = get_query_var( 'cpage' );

	if ( ! $page ) {
		$page = 1;
	}

	$next_page = (int) $page + 1;

	if ( empty( $max_page ) ) {
		$max_page = $wp_query->max_num_comment_pages;
	}

	if ( empty( $max_page ) ) {
		$max_page = get_comment_pages_count();
	}

	if ( $next_page > $max_page ) {
		return;
	}

	if ( empty( $label ) ) {
		$label = __( 'Newer Comments &raquo;' );
	}

	/**
	 * Filters the anchor tag attributes for the next comments page link.
	 *
	 * @since 2.7.0
	 *
	 * @param string $attributes Attributes for the anchor tag.
	 */
	$attr = apply_filters( 'next_comments_link_attributes', '' );

	return sprintf(
		'<a href="%1$s" %2$s>%3$s</a>',
		esc_url( get_comments_pagenum_link( $next_page, $max_page ) ),
		$attr,
		preg_replace( '/&([^#])(?![a-z]{1,8};)/i', '&#038;$1', $label )
	);
}