Michael Heilemann.
If you have Dunstan's Time Since installed, this plugin uses it for the title="" attributes on the comments and posts. (For WordPress 1.5) Author: Brian Meidell Author URI: http://meidell.dk/ Version 1.5: Now works without LOCK TABLE and CREATE TEMPORARY TABLE priviledges. Version 1.5.1: Can't remember what I did here Version 1.5.2: Fixed count select statement to not include spammy comments Version 1.5.3: Properly excludes track- and pingbacks Version 1.5.4: Excludes posts that are not published, even if they have comments Version 1.5.5: Fade old comments, fixed bug that wreaked havoc with Time Since Version 1.5.6: Bugfix from Jonas Rabbe (http://www.jonas.rabbe.com/) pertaining to timesince Version 1.5.7: Bugfix so old colors can be darker than new colors (stupid oversight), thanks to http://spiri.dk for spotting it. Bugfix where single digit hex would cause invalid colors, thanks to http://www.wereldkeuken.be/ for the fix. Version 1.5.8: Updated to work with WordPress 2.1 alpha by M. Heilemann. */ function blc_latest_comments($num_posts = 5, $num_comments = 6, $hide_pingbacks_and_trackbacks = true, $prefix = "
  • ", $postfix = "
  • ", $fade_old = true, $range_in_days = 10, $new_col = "#444444", $old_col = "#cccccc") { global $wpdb; function clamp($min, $max, $val) { return max($min,min($max,$val)); } $usetimesince = function_exists('time_since'); // Work nicely with Dunstan's Time Since plugin (adapted by Michael Heilemann) // This is compensating for the lack of subqueries in mysql 3.x // The approach used in previous versions needed the user to // have database lock and create tmp table priviledges. // This uses more queries and manual DISTINCT code, but it works with just select privs. if(!$hide_pingbacks_and_trackbacks) $ping = ""; else $ping = "AND comment_type<>'pingback' AND comment_type<>'trackback'"; $posts = $wpdb->get_results("SELECT comment_post_ID, post_title FROM ($wpdb->comments LEFT JOIN $wpdb->posts ON (comment_post_ID = ID)) WHERE comment_approved = '1' AND $wpdb->posts.post_status='publish' $ping ORDER BY comment_date DESC;"); $seen = array(); $num = 0; if($fade_old) { $max_time = $range_in_days * 24 * 60 * 60 ; $r_new = hexdec(substr($new_col, 1, 2)); $r_old = hexdec(substr($old_col, 1, 2)); //$r_min = min($min, $max); //$r_max = max($min, $max); $r_range = ($r_old-$r_new); $g_new = hexdec(substr($new_col, 3, 2)); $g_old = hexdec(substr($old_col, 3, 2)); //$g_min = min($min, $max); //$g_max = max($min, $max); $g_range = ($g_old-$g_new); $b_new = hexdec(substr($new_col, 5, 2)); $b_old = hexdec(substr($old_col, 5, 2)); //$b_min = min($min, $max); //$b_max = max($min, $max); $b_range = ($b_old-$b_new); } // print "ranges: $r_range, $g_range, $b_range
    "; // print "r: ".(0.5*$r_range+$r_new)."
    "; foreach($posts as $post) { // The following 5 lines is a manual DISTINCT and LIMIT, // since mysql 3.x doesn't allow you to control which way a DISTINCT // select merges multiple entries. if(array_key_exists($post->comment_post_ID, $seen)) continue; $seen[$post->comment_post_ID] = true; if($num++ > $num_posts) break; $commenters = $wpdb->get_results("SELECT *, UNIX_TIMESTAMP(comment_date) AS unixdate FROM $wpdb->comments WHERE comment_approved = '1' AND comment_post_ID = '".$post->comment_post_ID."' $ping ORDER BY comment_date DESC LIMIT $num_comments;"); $count = $wpdb->get_var("SELECT COUNT(comment_ID) AS c FROM $wpdb->comments WHERE comment_post_ID = $post->comment_post_ID AND comment_approved = '1' ".$ping); $i = 0; $link = get_permalink($post->comment_post_ID); if($usetimesince) $title = " title=\"Last comment was ".time_since($comment->unixdate)." ago\""; else $title = ""; echo $prefix."".stripslashes($post->post_title). "  ".$count."
    \n"; foreach($commenters as $commenter) { if($usetimesince) $title = " title=\"Posted ".time_since($commenter->unixdate)." ago\""; if($fade_old) { $diff = time() - $commenter->unixdate; $r = round($diff/$max_time*($r_range))+$r_new; $r = clamp(min($r_new, $r_old), max($r_new, $r_old), $r); $g = round($diff/$max_time*($g_range))+$g_new; $g = clamp(min($g_new, $g_old), max($g_new, $g_old), $g); $b = round($diff/$max_time*($b_range))+$b_new; $b = clamp(min($b_new, $b_old), max($b_new, $b_old), $b); $r_hex = str_pad(dechex($r), 2, '0', STR_PAD_LEFT); $g_hex = str_pad(dechex($g), 2, '0', STR_PAD_LEFT); $b_hex = str_pad(dechex($r), 2, '0', STR_PAD_LEFT); $colstr = " style=\"color: #".$r_hex.$g_hex.$b_hex.";\""; } if($i++ > 0) echo ", "; echo "comment_ID."\"$title>".stripslashes($commenter->comment_author).""; } if($count > $num_comments) echo " [...]"; echo "".$postfix."\n"; } } ?> Free | YEMblog

    Free RSS

    February 2, 2012

    Phish: 06/26/1995 Down With Disease > Free [VQ: C, AQ: A]

    January 2, 2012

    Covers: Elderly “Young at Heart Chorus” Covers Free

    YouTube Preview Image

    December 29, 2011

    Phish: 12/28/2011 HarpuaFSB Playlist [VQ: A, AQ: A+]

    Free, Glide, Cities, Curtis Loew, Stash, Contact, Sample, Kill Devil Falls, Bathtub Gin, Birds, Carini, Tweezer, My Friend, Rock and Roll, NICU, Bouncing, Harry Hood, Bug, Tube, Rocky Top, Tweezer Reprise

    Phish: 12/28/2011 MKDevo Playlist [VQ: A, AQ: A+]

    Free, Glide, Possum, Cities, Curtis Loew, Stash, Contact, Sample, Kill Devil Falls, Bathtub Gin

    December 21, 2011

    Phish: 12/07/1999 Free [VQ: B, AQ: B+]

    YouTube Preview Image

    December 19, 2011

    Phish: 11/16/1996 Playlist [VQ: A-, AQ: A-]

    embed

    Runaway Jim, The Vibration of Life w/ Kung and Catapult, Guyute, Gumbo, Rift, Free, The Old Home Place, David Bowie, Lawnboy, Sparkle, Frankenstein

    November 7, 2011

    Cactus: Free Download – Gordon, Murawski, Isler, Cleary, Myers Asheville  ’11 [LivePhish]

    September 29, 2011

    Downloads: Free Trey Anastasio Soundboards [LivePhish.com]

    June 13, 2011

    Phish: 06/10/2011 MKDevo Entire Show Playlist [VQ: A, AQ: A+]

    Rocky Top, Mike’s Song, I Am Hydrogen, Weekapaug Groove, Stash, Tube, Guyute, Guelah Papyrus, Scent of a Mule, Cavern, The Sloth, The Curtain With, Down With Disease, Free, Possum, Big Black Furry Creatures From Mars, Swept Away, Steep, David Bowie, Julius, Fluffhead, Joy

    March 4, 2011

    Phish: 07/31/2003 Partial Show Playlist [VQ: A, AQ: A+]

    http://www.youtube.com/view_play_list?p=9297AADE7C2E5FD3

    Piper, Mike’s Song > I Am Hydrogen > Weekapaug Groove, Free, Harry Hood

    February 20, 2011

    Trey Anastasio: Trey Anastasio Band 02/19/2011 Video Playlist [VQ: A-, AQ: A-]

    http://www.youtube.com/view_play_list?p=87EE6AEF3328CBEB

    Free, The Wedge, Prince Caspian, BDTNL, Limb By Limb, Stealing Time, Buffalo Bill, Joy, Halley’s, Wading, Black, Valentine, Devil Went Down to Georgia, Money Love and Change, Done Done It, Clint Eastwood, Windora Bug, Birdwatcher, Sand, Drifting, The Way I Feel

    December 21, 2010

    Trey Anastasio: 11/18/2010 Official Release, Free Princeton, NJ

    • Free MP3 download from Trey Anastasio
    • Recorded 11/18/10 at Richardson Auditorium, Princeton University, Princeton, NJ
    • Trey Anastasio – vocals, acoustic guitar, piano
    • Gregor Kitzis – violin
    • Maxim Moston – violin
    • Martha Mooke – viola
    • Leah Coloff – cello
    • Kris Saebo – bass

    October 28, 2010

    Phish: 10/24/2010 Free [VQ: A, AQ: A+]

    YouTube Preview Image

    October 15, 2010

    Phish: 10/12/2010 Free [VQ: B+, AQ: B]

    YouTube Preview Image

    October 13, 2010

    Phish: 10/12/2010 Partial Show Playlist [VQ: A-, AQ: B+]

    http://www.youtube.com/view_play_list?p=4AC5386248E3C242

    Divided Sky, Timber, 46 Days, David Bowie, Light, Free, Split Open and Melt, Meatstick

    August 23, 2010

    Downloads: Live Bait Volume 1 [Phish.com]

    The tracks were cherry-picked from the band’s first leg of their recently completed Summer Tour, and are fully mixed soundboards from LivePhish.com. Click here to stream “Phish: Live Bait Vol. 01″ now or download MP3s – absolutely free.

    August 5, 2010

    Phish: 06/29/1995 Free [VQ: B+, AQ: A-]

    YouTube Preview Image

    March 1, 2010

    Charity: Free Best Of Bonnaroo Compilation [Music For Action]

    February 2, 2010

    Phish: 01/01/2000 Free [VQ: B, AQ: B+]

    YouTube Preview Image

    September 15, 2009

    Contest: HT Giveaway – Win Two Tickets to Festival 8 [Hidden Track]

    While tickets to F8 are still available, we’ve got a pair of three-day passes for a creative Phish fan out there. Leave a comment below detailing the best Phish-related costume you can think of and we’ll pick our ten favorite ideas.

    Phish: 12/31/1999 Free [VQ: A+, AQ: A+]

    August 31, 2009

    Phish: 01/01/2000 Free [VQ: C, AQ: B]

    YouTube Preview Image

    June 1, 2009

    Phish: 05/31/2009 Free [Video Quality: A, Audio Quality: A-]

    YouTube Preview Image

    November 4, 2008

    Phish: 02/16/1997 Free

    YouTube Preview Image

    October 9, 2008

    Remembrances: 09/17/2000 Dog Log > Mango > Free [Butter Room]