Как вывести количество комментариев, написанных автором поста

Как вывести количество комментариев, написанных автором поста | n-wp.ru
Код, отображающий количество комментариев, опубликованных автором поста. Количество комментариев подсчитывается по электронному адресу автора поста.
👍 Научим бесплатно правильно создавать сайты на WordPress. Подробнее →

Понадобилось мне рядом с ником автора поста вывести количество записей, сделанных этим автором, а так же и количество комментариев, оставленных автором поста в блоге. До этого я уже писал, как в архиве постов определенного автора вывести его дополнительные данные – аватар, номер текущей страницы, никнейм, имя и фамилию, информацию, которую автор написал о себе в профиле, и количество постов, им опубликованное. Количество комментариев, которое автор оставил в блоге, будет хорошим дополнением к этим данным.

Как вывести количество комментариев, написанных автором поста

Сначала я думал, что нужно ориентироваться на ID автора или его имя. Однако практика показывает, что в блоге с открытой системой комментирования без обязательной регистрации пользователи могут оставлять комментарии, не входя под своим логином. Сегодня я зашел под свои логином и ответил на комментарий, а завтра просто ввел свое имя и e-mail, и написал комментарий – на первый взгляд визуально эти два комментария могут и не отличаться, но для базы данных они будут оставлены двумя разными субъектами. Поэтому тут главным объединяющим всех комментариев одного и того же человека становится на ID (ведь у незарегистрированных его нет) и не имя (оно может быть разным или одинаковым), а e-mail, который в 99% случаев будет одним и тем же: e-mail регистрации в блоге почто во всех случаях совпадает с e-mail адресом, который используется при комментировании без входа в блог, если этот человек, конечно, не страдает параноидальной тягой к использованию разных e-mail адресов при комментировании. Поэтому для подсчета и вывода количества комментариев автора поста используется его e-mail:

get_var('SELECT COUNT(comment_ID) FROM ' . $wpdb->comments. ' WHERE comment_author_email = "' . get_the_author_email() . '"'); echo $count . ''; ?>

Этот код нужно использовать внутри цикла вывода постов, чтобы он мог правильно распознать автора текущего поста. По нему он определяет его e-mail, а по адресу электронной почты выуживает из базы данных количество комментариев.

Создай свой первый сайт на WordPress

tiaurus

Автор n-wp.ru — блога о WordPress для новичков.

Оцените автора
Добавить комментарий

×
WordPress:
прокачай свой сайт!

Скидка на премиум темы и плагины

Успей забрать скидку ⋙