get_comments_number() WP 1.5.0

Отримує кількість усіх коментарів посту, включаючи повідомлення та пінги.

Використовується у циклі WordPress.

Отримує значення поля$post->comment_count

На відміну від comments_number() , ця функція повертає число, а не рядок.

Повертає

Строку|int. Кількість коментарів.

Використання

$my_var = get_comments_number( $post_id );
$post_id
(число/об’єкт)
ID посту, кількість коментарів якого ми хочемо отримати.


За замовчуванням: поточний пост

Приклади

0

#1 Створимо аналог функції comments_number()з використанням get_comments_number():

$num_comments = get_comments_number(); // Поверне число

if ( comments_open() ) {
	if ( $num_comments == 0 ) {
		$comments = __('No Comments');
	} elseif ( $num_comments > 1 ) {
		$comments = $num_comments. __('Comments');
	} else {
		$comments = __('1 Comment');
	}
	$write_comments = '<a href="' . get_comments_link() .'">'. $comments.'</a>';
} else {
	$write_comments = __('Comments are off for this post.');
}
0

#2 Кількість коментарів з даних посту

Як альтернатива цієї функції, кількість коментарів посту можна отримати з даних посту в змінній $post: $post->comment_count:

global $post;
echo $post->comment_count;

список змін

З версії 1.5.0Введено.

Код get_comments_number() WP 6.0.2

function get_comments_number( $post_id = 0 ) {
	$post = get_post($post_id);

	if (! $post) {
		$ count = 0;
	} else {
		$count = $post->comment_count;
		$post_id = $post->ID;
	}

	/**
	 * Filters returned comment count for a post.
	 *
	 * @ Since 1.5.0
	 *
	 * @param string|int $count На string representing number of comments a post has, otherwise 0.
	 * @param int $post_id Post ID.
	 */
	return apply_filters( 'get_comments_number', $count, $post_id );
}

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

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