WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru

comments_number() WP 0.71

Выводит общее число комментариев записи (поста) (включая уведомления и пинги). Используется внутри Цикла WordPress.

Работает на основе: get_comments_number_text()
✈ 1 раз = 0.000071с = очень быстро | 50000 раз = 1.61с = быстро

Хуков нет.

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

<?php comments_number( $zero, $one, $more ); ?>
$zero(строка)
Текст, который будет показан, если комментариев нет.
По умолчанию: 'Комментариев нет'
$one(строка)
Текст, который будет показан, если всего 1 комментарий.
По умолчанию: '1 комментарий'
$more(строка)
Текст, который будет показан, если комментариев больше чем 1.
По умолчанию: '% комментариев'

Примеры

1. Количество комментариев статьи

Выведем количество комментариев статьи и укажем какой текст писать, при определенном количестве комментариев.

<p>У этого поста  
<?php comments_number('пока нет комментариев', '1 комментарий', '% комментариев'); ?>.</p>

2. ссылка на комментарии

Выведем для каждого анонса поста на странице категорий ссылку на комментарии, где анкором ссылки будет количество комментариев поста:

<a href="<?php the_permalink() ?>#comments">
	<?php comments_number('нет комментариев', '1 комментарий', '% комментариев'); ?>
</a>

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

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

Код comments number: wp-includes/comment-template.php WP 5.3

<?php
function comments_number( $zero = false, $one = false, $more = false, $deprecated = '' ) {
	if ( ! empty( $deprecated ) ) {
		_deprecated_argument( __FUNCTION__, '1.3.0' );
	}
	echo get_comments_number_text( $zero, $one, $more );
}

Cвязанные функции

Из раздела: Комментарии

Еще из тегов шаблона: Комментарии

11 комментов
  • Княгиня greatbattle.ru

    Скажите, а нет ли простого готового способа вывести количество ТОЛЬКО комментариев, без пингов? Или это только запросом к базе обсчитывать?

    Ответить11.Окт.2012 в 13:17 #
  • allexandriya

    Спасибо! Работает))

    Ответить23.Янв.2014 в 23:39 #
  • Игорь

    Большое спасибо!

    Ответить08.Ноя.2014 в 13:39 #
  • антон onjee.ru

    Привет. Не подскажешь как можно сделать вот так:

    Если комментариев 0 - есть ссылка Добавить свой комментарий
    Если комментариев > 0 - есть ссылка - посмотреть комментарии (ссылка Добавить свой... пропадает)

    Заранее большое спасибо.

    1
    Ответить04.Янв.2015 в 20:11 #
    • campusboy3434 www.youtube.com/c/wpplus

      Обязательно в цикле должно быть

      <?php
      $num_comments = get_comments_number();
      if ($num_comments < 1){
      	echo '<a href="#respond">Добавить комментарий</a>';
      }
      else {
      	echo '<a href="#comments">Посмотреть комментарии</a>';
      }
      ?>

      respond - это ID блока, в котором находится форма комментария.
      comments - это ID блока, в котором выводятся комментарии.

      1
      Ответить13.Янв.2015 в 17:46 #
  • Ван

    Исправьте:
    У этого поста
    .

    Где 1 комментарий.

    И когда добавляешь коммент, то кнопка тупо оранжевая без текста, только когда наводишь на нее курсор появляется текст, браузер: Хром.

    Ответить03.Июл.2015 в 19:54 #
  • Андрей chto-podarite.ru

    В примере "2. ссылка на комментарии" опечатка: "'1 комменатрий'"

    1
    Ответить02.Янв.2019 в 20:17 #
  • Приветствую, а как вывести окончания для 2, 3, 4?
    К примеру,
    2 комментария
    3 комментария
    44 комментария и т.п.?

    Ответить29.Ноя.2019 в 19:33 #
Здравствуйте, !     Войти . Зарегистрироваться