WordPress REST API предоставляет мощный способ программного взаимодействия с вашим веб-сайтом WordPress. Если вы хотите получить количество комментариев к определенной публикации или по всему сайту, в этой статье вы познакомитесь с различными методами с примерами кода. К концу вы получите четкое представление о том, как реализовать эти методы в ваших собственных проектах WordPress.
Метод 1: использование конечной точки wp/v2/posts
Самый простой способ получить количество комментариев для определенного сообщения — использовать конечную точку wp/v2/posts. Вот пример того, как этого можно добиться с помощью JavaScript:
fetch('https://your-wordpress-site/wp-json/wp/v2/posts/{post_id}')
.then(response => response.json())
.then(data => {
const commentCount = data.comments.length;
console.log(`Number of comments: ${commentCount}`);
})
.catch(error => {
console.error('Error:', error);
});
Метод 2: использование конечной точки wp/v2/comments
Если вы хотите получить общее количество комментариев по всему сайту, вы можете использовать конечную точку wp/v2/comments. Вот пример использования JavaScript:
fetch('https://your-wordpress-site/wp-json/wp/v2/comments')
.then(response => response.json())
.then(data => {
const commentCount = data.length;
console.log(`Total number of comments: ${commentCount}`);
})
.catch(error => {
console.error('Error:', error);
});
Метод 3: собственный WP_Query
Другой подход — использовать класс WP_Query
для получения количества комментариев. Этот метод полезен, если вам нужен больший контроль над параметрами запроса. Вот пример использования PHP:
$comments_query = new WP_Query(array(
'post_type' => 'post',
'post_status' => 'publish',
'posts_per_page' => 1,
'p' => $post_id,
'fields' => 'ids',
'no_found_rows' => true,
'update_post_meta_cache' => false,
'update_post_term_cache' => false,
));
if ($comments_query->have_posts()) {
$post_id = $comments_query->posts[0];
$comment_count = get_comments_number($post_id);
echo "Number of comments: " . $comment_count;
}
В этой статье мы рассмотрели несколько методов получения количества комментариев с помощью REST API WordPress. Мы рассмотрели использование конечных точек wp/v2/posts и wp/v2/comments, а также специальный подход WP_Query. В зависимости от ваших конкретных требований и необходимого вам уровня контроля вы можете выбрать метод, который лучше всего соответствует вашим потребностям. Используя эти методы, вы можете расширить свои приложения WordPress с помощью функций комментариев.