I am trying to fix a page on a blog and having trouble with the php code. Right now it is giving the stats for the blog by month in a table. What I don’t want it to do is cut off the page each year, but that is what it is doing. How do I modify the code to remove the year loop? The code is below. Any help is appreciated. Thanks!
[php]<?php
/**
- Template Name: Stats
*/
get_header(); ?>
<?php echo $value; ?><?php echo ($year.$key == date("Ym"))?' ':''; ?> <?php echo ($year = date("Y"));?> Stats
<?php unset($query,$result,$row); $query = "SELECT name.meta_value AS reviewer, SUM(pages.meta_value) AS total_pages, COUNT(pages.meta_key) AS books FROM wp_posts post LEFT JOIN wp_postmeta name ON post.ID = name.post_id LEFT JOIN wp_postmeta pages ON post.ID = pages.post_id LEFT JOIN wp_postmeta date ON post.ID = date.post_id WHERE post.post_status = 'publish' AND post.post_type = 'post' AND name.post_id=post.ID AND name.meta_key='reviewer' AND pages.post_id=post.ID AND pages.meta_key='page_number' AND date.post_id=post.ID AND date.meta_key='date_read' AND date.meta_value LIKE '".$key."/%%/".$year."' GROUP BY name.meta_value ORDER BY reviewer ASC"; $result = mysql_query($query); if ($result) { ?>Reviewer | Books | Pages | Avg pages/book | <?php echo ($row['reviewer'])?$row['reviewer']:''; ?> | <?php echo $row['books']; ?> | <?php echo number_format($row['total_pages']); ?> | <?php echo number_format(round($row['total_pages'] / $row['books'])); ?> | <?php $x++; } ?>
Total Books Read: <?php echo number_format($total_books); ?>
Total Pages Read: <?php echo number_format($total_pages); ?>
Total participants: <?php echo $total_readers; ?>
Average pages/book: <?php echo number_format(round(($total_pages / $total_books))); ?>
<?php }} $year_total_books = 0; $year_total_pages = 0; $year_total_readers = 0; foreach ($year_total as $r_name => $r_category) { $year_total_books = $year_total_books + $r_category['books']; $year_total_pages = $year_total_pages + $r_category['pages']; $year_total_readers++; }} ?>