Hallo zusammen!
Ich habe ein kleines Problem mit Wordpress: Ich möchte gerne eine Seite erstellen, auf der eine Auflistung aller Kommentare mit Name des Kommentarerstellers, Datum, etc. zu finden ist. So weit bin ich bis jetzt:
<?php get_header();?>
<?php
global $wpdb, $comments, $comment;
$start = 0;
$number = 30;
$comments = $wpdb->get_results("SELECT comment_author, comment_author_url, comment_ID, comment_post_ID FROM $wpdb->comments WHERE
comment_approved = '1' ORDER BY comment_date_gmt DESC LIMIT $start, $number");
$page_links = paginate_links( array(
'base' => add_query_arg( 'apage', '%#%' ),
'format' => '',
'total' => ceil(100 / $number),
'current' => $page
));
echo "<div class='tablenav-pages'>$page_links</div>";
?><div id="overview"><table><?
if ( $comments ) : foreach ($comments as $comment) :
?>
<tr>
<td><?php echo get_the_title($comment->comment_post_ID) ?></td>
<td><?php echo get_comment_author_link() ?></td>
</tr>
<?
endforeach; endif;?>
</table></div>
<?php get_footer();?>
Alles anzeigen
Ausgegeben wird eine Seite, auf der die letzten 30 Kommentare stehen. Nun hätte ich aber gerne, dass man mit einer Navigation (ich benutze WP-PageNavi) die nächsten/vorherigen 30 Kommentare anzeigen kann.
Wie mach ich das am besten, vielleicht sogar mit WP-PageNavi? Ich hab mit einer eigenen Navi schonmal angefangen, aber dafür bräuchte ich die Gesamtanzahl der Datensätze in einer Variable. Kann man da etwas mit SELECT COUNT * erreichen?
Kennt jemand möglicherweise eine bessere Lösung für dieses Problem? Ich hatte diese Liste auch schon mit Beiträgen statt Kommentaren gemacht, das konnte ich jedoch in der Loop realisieren und das Ganze sah letztendlich recht elegant aus :)
Gruß, Sturm