Comment Queries

You can retrieve comments using the WP_Comment_Query class. When WordPress tries to load a single post, it constructs one of these objects in order to retrieve the number of comments it has, ready for when it’s displayed later on.

This is a basic comment query:

  1. $args = array(
  2. // args here
  3. );
  4. // The Query
  5. $comments_query = new WP_Comment_Query();
  6. $comments = $comments_query->query( $args );
  7. // Comment Loop
  8. if ( $comments ) {
  9. foreach ( $comments as $comment ) {
  10. echo '<p>' . $comment->comment_content . '</p>';
  11. }
  12. } else {
  13. echo 'No comments found.';
  14. }

Comment queries can find comments of different types across multiple or single posts. Using a comment query can be faster than a raw SQL command thanks to the built cache system.