Если вы хотите подсчитать количество комментариев, оставленных пользователем к сообщениям:
Вы можете использовать функцию get_comments()
https://developer.wordpress.org/reference/functions/get_comments/
который принимает массив аргументов
https://developer.wordpress.org/reference/classes/wp_comment_query/__construct/
В вашем массиве аргументов вы используете user_id
только для получения комментариев этого пользователя. Вы также используете count
для возврата количества комментариев.
Код выглядит следующим образом:
<?php
$comments_args = array(
'user_id' => 12, // Your user ID, for example user with id 12
'count' => true // Return count
);
$comments_count = get_comments( $comments_args );
echo $comments_count;
?>
Теперь у вас есть количество комментариев, написанных пользователем с идентификатором 12.
Если вы хотите подсчитать сообщения, в которые пользователь добавил один или несколько комментариев:
Вы можете использовать WP_Query
, просмотреть свои сообщения и использовать wp_list_pluck()
, чтобы вырвать поле каждого объекта.
$args = array(
'post_type' => 'post',
'posts_per_page' =>-1,
'post__in' => array_unique(
wp_list_pluck(
get_comments( array(
'user_id' => get_current_user_id()
)
),
'comment_post_ID'
)
),
);
$comment_query = new WP_Query( $args );
// The Loop
$counter = 0;
if ( $comment_query ->have_posts() ) {
while ( $comment_query ->have_posts() ) {
$comment_query ->the_post();
$counter++;
// or display title or something
}
/* Restore original Post Data */
wp_reset_postdata();
} else {
// no posts found
}
Теперь вы можете отобразить номер, используя echo $counter;
.