Visa senaste kommentarerna
Publicerad den av Stefan Persson
Vi beskrev igår hur du visar de senaste inläggen i WordPress och nu tänkte vi även ge dig en guide på hur du kan visa senaste kommentarerna utan att behöva använda något WordPress plugin. Oftast så väljer man att visa senaste kommentarerna i sin sidebar men det är som alltid upp till dig vart och hur du vill visa kommentarerna.
Låt oss ta ett exempel där du just väljer att visa senaste kommentarerna i din sidebar. Börja med att öppna sidebar.php och sedan så lägger du till nedanstående kodsnutt där du vill att kommentarerna skall visas:
<?php
global $wpdb;
$sql = "SELECT DISTINCT ID, post_title, post_password, comment_ID,
comment_post_ID, comment_author, comment_date_gmt, comment_approved,
comment_type,comment_author_url,
SUBSTRING(comment_content,1,30) AS com_excerpt
FROM $wpdb->comments
LEFT OUTER JOIN $wpdb->posts ON ($wpdb->comments.comment_post_ID =
$wpdb->posts.ID)
WHERE comment_approved = '1' AND comment_type = '' AND
post_password = ''
ORDER BY comment_date_gmt DESC
LIMIT 10";
$comments = $wpdb->get_results($sql);
$output = $pre_HTML;
$output .= "n<ul>";
foreach ($comments as $comment) {
$output .= "n<li>".strip_tags($comment->comment_author)
.":" . "<a href="" . get_permalink($comment->ID) .
"#comment-" . $comment->comment_ID . "" title="on " .
$comment->post_title . "">" . strip_tags($comment->com_excerpt)
."...</a></li>";
}
$output .= "n</ul>";
$output .= $post_HTML;
echo $output;?>
Skulle du även vilja visa vilka inlägg som har fått flest kommentarerna så kan du använda denna kodsnutt:
<ul>
<?php $result = $wpdb->get_results("SELECT comment_count,ID,
post_title FROM $wpdb->posts ORDER BY comment_count DESC LIMIT 0
, 10");
foreach ($result as $topten) {
$postid = $topten->ID;
$title = $topten->post_title;
$commentcount = $topten->comment_count;
if ($commentcount != 0) { ?>
<li><a href="<?php echo get_permalink($postid); ?>"
title="<?php echo $title ?>"><?php echo $title ?></a></li>
<?php } } ?>
</ul>
Ovanstående kodsnutt visar de 10 inlägg som har fått flest kommentarer och du kan givetvis anpassa detta så att det visas fler eller färre inlägg.