By default, most WordPress themes display Recent Comments in some form or another. Unfortunately, it isn’t usually very user-friendly, so it will often get removed.

Until now, most of your other options required the use of a WordPress plugin, but today I ran across a great code snippet you can use to display recent comments in a useful format. I just tested it out on my test site and it looks good. Here is the code you will want to paste into your theme’s sidebar:

<h2>Recent Comments</h2>
<?php
global $wpdb;
$sql = "SELECT DISTINCT ID, post_title, post_password, comment_ID,
comment_post_ID, comment_author, comment_date_gmt, comment_approved,
comment_type,comment_author_url,
SUBSTRING(comment_content,1,30) AS com_excerpt
FROM $wpdb->comments
LEFT OUTER JOIN $wpdb->posts ON ($wpdb->comments.comment_post_ID =
$wpdb->posts.ID)
WHERE comment_approved = '1' AND comment_type = '' AND
post_password = ''
ORDER BY comment_date_gmt DESC
LIMIT 10";
$comments = $wpdb->get_results($sql);
$output = $pre_HTML;
$output .= "\n<ul>";
foreach ($comments as $comment) {
$output .= "\n<li>".strip_tags($comment->comment_author)
.":" . "<a href=\"" . get_permalink($comment->ID) .
"#comment-" . $comment->comment_ID . "\" title=\"on " .
$comment->post_title . "\">" . strip_tags($comment->com_excerpt)
."</a></li>";
}
$output .= "\n</ul>";
$output .= $post_HTML;
echo $output;?>

[via WordPress Garage]

Digg This! | Stumble it! | Add to Del.icio.us | | Print This! |

There Are 3 Responses So Far. »

  1. 1 Dino
    Tuesday, November 20th, 2007 at 5:37 am

    Wow, that is extremely helpful. I’ve been using plugins for the recent comments and I think it’s also included in the default sidebar widgets.

    Thanks for the code!

  2. 2 Ben K.
    Tuesday, November 20th, 2007 at 10:13 am

    So here’s my question: Is there a way to highlight new comments on site? I’m running a site that gets a lot of comments an readers have asked for a way to know which ones are new and which ones aren’t. I’m not up on my coding of cookies and such to do that.

  3. 3 milo
    Saturday, November 24th, 2007 at 6:05 am

    Instead of calling the WP db base directly:

    - backup all files
    - select a recent post plugin (a simple one)
    - cut and paste the pi code in to your theme functions file
    - check if all is in same order like original file
    - save it
    - insert the php call in your desired template file



Leave A Comment