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.0.2

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;
	}

	$nextpage = (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 ( $nextpage > $max_page ) {
		return;
	}

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

	/**
	 * Filters anchor tag atributes for next comments page link.
	 *
	 * @ Since 2.7.0
	 *
	 * @param string $attributes Attributes for the anchor tag.
	 */
	return '<a href="' . esc_url( get_comments_pagenum_link( $nextpage, $max_page ) ) . '" ' . apply_filters( 'next_comments_link_attributes', '' ) . '>'. preg_replace( '/&([^#])(?![az]{1,8};)/i', '&$1', $label ) . '</a>';
}

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *