get_comments_number()
Отримує кількість усіх коментарів посту, включаючи повідомлення та пінги.
Використовується у циклі WordPress.
Отримує значення поля$post->comment_count
На відміну від comments_number() , ця функція повертає число, а не рядок.
Основа для:
get_comments_number_text() ,
1 раз – 0.000631 сек
(повільно) | 50000 разів – 1.09 сек
(швидко)
get_comments_number_text() ,
1 раз – 0.000631 сек
(повільно) | 50000 разів – 1.09 сек
(швидко)
Хуки з функції
Повертає
Строку|int
. Кількість коментарів.
Використання
$my_var = get_comments_number( $post_id );
-
$post_id
(число/об’єкт) -
ID посту, кількість коментарів якого ми хочемо отримати.
За замовчуванням: поточний пост
Приклади
#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.'); }
#2 Кількість коментарів з даних посту
Як альтернатива цієї функції, кількість коментарів посту можна отримати з даних посту в змінній $post
: $post->comment_count
:
global $post; echo $post->comment_count;
список змін
З версії 1.5.0 | Введено. |
Код get_comments_number() 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 ); }