Главная » PHP » Как получить количество ответов отдельного комментария в WordPress
Как получить количество ответов отдельного комментария в WordPress
Я использую торгуемые комментарии, поэтому каждый комментарий получает несколько ответов. Мне нужно получить количество ответов каждого отдельного комментария. Мне не нужно общее количество ответов на все комментарии.
И наоборот, который показывает общее количество ответов, а не то, что я ищу. Этот код показывает все ответы на все комментарии.
Код в functions.php
function replies_counter($id){
global $wpdb;
$query = "SELECT COUNT(comment_post_id) AS count FROM $wpdb->comments
WHERE `comment_approved` = 1 AND `comment_post_ID` = $id AND
`comment_parent` = 0";
$parents = $wpdb->get_row($query);
return $parents->count;
}
почему бы вам не написать такую пользовательскую функцию, чтобы получать подкомменты для каждого отдельного комментария по идентификатору, как это?
function subreplies_counter($id){
global $wpdb;
$query = "SELECT COUNT(comment_ID) AS count FROM $wpdb->comments
WHERE `comment_approved` = 1 AND `comment_parent` = $id";
$data = $wpdb->get_row($query);
return $data->count;
}
0
Другие решения
Я всегда предпочитаю использовать основную функцию WordPress, если есть возможность делать то, что я хочу.
Вы можете легко достичь этого, используя get_comments. С countаргумент установлен в true, Таким образом, он будет получать только количество комментариев.
$args = array(
'post_id' => $post->ID, //main post id
'parent' => get_comment_ID(), //the comment id
'count' => true, //just count
);
$comments = get_comments($args); //number of comments;
Я использую торгуемые комментарии, поэтому каждый комментарий получает несколько ответов. Мне нужно получить количество ответов каждого отдельного комментария. Мне не нужно общее количество ответов на все комментарии.
Я пытался использовать этот код:
И наоборот, который показывает общее количество ответов, а не то, что я ищу. Этот код показывает все ответы на все комментарии.
Код в functions.php
Затем откройте страницу шаблона:
Это все о получении общего количества ответов на все комментарии. Но мне нужно количество ответов каждого комментария в отдельности.
Будет хорошо, если кто-нибудь поможет мне.
Решение
почему бы вам не написать такую пользовательскую функцию, чтобы получать подкомменты для каждого отдельного комментария по идентификатору, как это?
Другие решения
Я всегда предпочитаю использовать основную функцию WordPress, если есть возможность делать то, что я хочу.
Вы можете легко достичь этого, используя get_comments. С
count
аргумент установлен вtrue
, Таким образом, он будет получать только количество комментариев.