Wishful Coding

Didn't you ever wish your computer understood you?

Wordpress.com Stats: Top Posts Widget

Wordpress.com Stats: Top Posts WidgetThis hack is so cool and so simple, I expect anyone to run up to me and yell that this has been done before. I created a 'Top Posts' sidebar widget based on the widget that comes with any Worpdpress.com blog. I know there are several widgets like this, but they all include their own statistics tracking. Mine is nothing more than an excerpt of the Dashboard widget that comes with the Wordpress.com Stats plugin. For people not interested in technical details, here is a plugin file, that works as usual; Make sure you install the Wordpress.com Stats plugin first! I said this hack was simple, here is way: The code is already there! I'm surprised Wordpress did not include the widget themselves. Lets have a look at stats.php: Line 925-926:
foreach ( $top_posts = stats_get_csv( 'postviews', "days=$options[top]$csv_args[top]" ) as $post )
        $post_ids[] = $post['post_id'];
Line 942-949:
<?php foreach ( $top_posts as $post ) : if ( !get_post( $post['post_id'] ) ) continue; ?>
<p><?php printf(
        $printf,
        '' . get_the_title( $post['post_id'] ) . '',
//                        '' . $post['post_title'] . '',
        number_format_i18n( $post['views'] )
); ?></p>
<?php endforeach; ?>
My resulting guesswork looks like this:
<h4>Top posts</h4>
<ul>
<?php foreach($top_posts = stats_get_csv('postviews', "days=7") as $post): if(!get_post($post['post_id'])) continue; ?>
        <li></li>
<?php endforeach; ?>
If anyone is interested, I can upload this to the Wordpress plugin repository. Done: http://wordpress.org/extend/plugins/wordpresscom-stats-top-posts-sidebar-widget/
Pepijn de Vos