Количество комментариев в WordPress

Ваш отзыв

кол-во комментов

Некоторое время назад я писала о том, как перед началом статьи в шаблоне Reverie вывести количество комментариев. Времена меняются, и то, что писалось тогда, в феврале ушедшего 2016 года, уже не актуально сейчас. Ранее в статье предлагалось использовать функцию reverie_entry_meta из файла functions.php темы, указав в ней что-то в духе

Для Ваших тем наверняка необходимо делать что-то подобное, где-то вызывать функцию comments_popup_link.

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

количество комментариевОткуда же такое берется ?

Начиная с версии 4.0, в WordPress используется функция get_comments_number_text, реализация которой находится в файле wp-includes/comment-template.php. Окончательный вариант функции, который используется в текущей версии WordPress 4.7, был сформирован в версии 4.6. Русификация слов «Comments» происходит в файле wp-content/languages/ru_RU.po. Точнее говоря, мне проще показать оттуда нужное содержимое  :

#. translators: %s: number of comments
#: wp-includes/comment-template.php:874
msgid «%s Comment»
msgid_plural «%s Comments»
msgstr[0] «%s комментарий»
msgstr[1] «%s комментария»
msgstr[2] «%s комментариев»

В функции get_comments_number_text отфильтровывается все то, что мы пытались задать ранее, и заменяется на стандартные значения.

Но это не означает, что мир несправедлив и ничего изменить нельзя.

ничего не изменить

Можно ! Делается это через все тот же файл functions.php Вашей темы или через создание собственного плагина. Давайте ради разнообразия сделаем все именно через плагин, это вообще по многим соображениям правильнее.

Я такой создала для примера, можете его скачать по данной ссылке. В моем случае это чуток подкорректированный клон функции get_comments_number_text. Фактически весь его смысл состоит в том, чтобы добавить свой собственный фильтр comments_number строкой

, где change_comment_number_text — это некоторая написанная нами функция, которая выводит оформатированный текст количества комментов к посту конструкцией языка PHP «echo». Название функции может быть любым, но уникальным в пределах кода. На самом деле, если Вы все же зададите неуникальное имя функции, все, что произойдет при активации плагина — это предупреждение о том, что такая функция уже где-то используется.

В скачанном файле при желании поменяйте название, описание плагина (удалять сами поля не надо), содержимое и название функции любым приятным способом.  Сохраните файл с расширением PHP и кодировкой UTF-8, чтобы русские буквы отображались правильно, а не «кракозябрами». Можете вообще все оставить как есть, дело хозяйское.

Создайте в папке wp-content/plugins папку, например, с названием change-comment-number-text. Туда скопируйте получившийся файлик php. Затем найдите в админке Вашего блога только что созданный Вами плагин и активируйте его. Если мы все сделали правильно, то текст количества комментариев изменится на тот, что Вы задали. Вот так это выглядит у меня при активации плагина:

Плагин количество комментариев

На самом деле его можно сделать гораздо лучше, например, также создать файлик перевода текста плагина, т.о. сделать его мультиязычным, но тут была задача показать, что изменилось и как этому противостоять  .

P.S. Всех с Рождеством!!!


Оставьте комментарий

XHTML: Вы можете использовать следующие теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url=""> <img src="" alt="" class="" width="" height="">

http://noservice.ru/wp-content/plugins/wp-monalisa/icons/ab.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/ac.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/ag.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/ah.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/ai.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/ak.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/am.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/an.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/ao.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/aq.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/ar.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/at.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/av.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/aw.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/ay.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/az.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/bb.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/bc.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/bd.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/be.gif 
больше...