Subscribe via feed.

How to display popular posts without plugin?

Posted by Chada on September 23, 2008 – 6:54 am

The same as “How to display random posts without plugin”, you can also display polular posts without plugin.

Copy codes below and paste to your theme:

< ?php function popular_posts($no_posts = 5, $before = '<li>', $after = '', $show_pass_post = false, $duration='') {
global $wpdb;
$request = "SELECT ID, post_title, COUNT($wpdb->comments.comment_post_ID) AS 'comment_count' FROM $wpdb->posts, $wpdb->comments";
$request .= " WHERE comment_approved = '1' AND $wpdb->posts.ID=$wpdb->comments.comment_post_ID AND post_status = 'publish'";
if(!$show_pass_post) $request .= " AND post_password =''";
if($duration !="") { $request .= " AND DATE_SUB(CURDATE(),INTERVAL ".$duration." DAY) < post_date ";
}
$request .= " GROUP BY $wpdb->comments.comment_post_ID ORDER BY comment_count DESC LIMIT $no_posts";
$posts = $wpdb->get_results($request);
$output = '';
if ($posts) {
foreach ($posts as $post) {
$post_title = stripslashes($post->post_title);
$comment_count = $post->comment_count;
$permalink = get_permalink($post->ID);
$output .= $before . '<a href="' . $permalink . '" title="' . $post_title.'">' . $post_title . '</a> (' . $comment_count.')' . $after;
}
} else {
$output .= $before . "None found" . $after;
}
echo $output;
} ?>
< ?php most_popular_posts(); ?>

You can change the number of posts you want to show by change the “5″ in “$no_posts = 5″. Enjoy it!

Tags: ,
This post is under “Theme Tips” and has 1 respond so far.
If you enjoy this article, make sure you subscribe to my RSS Feed.

1 Respond so far- Add one»

  1. 1. 99839 Said:

    wa!.i love this

Post a reply