0815

Du musst dich anmelden um Beiträge und Themen zu erstellen. Einloggen · Registrieren

Display Latest Comments without a Plugin

Good rule of thumb when working with WordPress: don’t use a plugin if you can acheive the same functionality without one. Case in point: displaying latest comments on your blog. Sure, you could always install a plugin to do it for you, but you really don’t need to. In fact, it’s actually easier to display recent comments without a plugin. SImply add the following code to the desired location within your theme’s template files:

<?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,50) // NUMBER OF CHARACTERS
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 5"; // NUMBER OF COMMENTS

$comments = $wpdb->get_results($sql);
$output   = $pre_HTML;
$output  .= "\n<ul>";

foreach ($comments as $comment) {
	$output .= "\n<li>"."<a href=\"" . get_permalink($comment->ID) . 
	"#comment-" . $comment->comment_ID . "\" title=\"on " . 
	$comment->post_title . "\">" .strip_tags($comment->comment_author) 
	.":<br/><div>" . strip_tags($comment->com_excerpt) 
	."</div></a></li>";
}
$output .= "\n</ul>";
$output .= $post_HTML;

echo $output;
?>

This code will display the 5 most recent comments in the following (X)HTML output format:

<ul>
	<li>
		<a href="http://domain.tld/post#comment-01" title="on Post Title">Comment Author:<br />
		<div>This is the first 50 characters of the first most recent comment</div></a>
	</li>
	<li>
		<a href="http://domain.tld/post#comment-01" title="on Post Title">Comment Author:<br />
		<div>This is the first 50 characters of the first most recent comment</div></a>
	</li>
	<li>
		<a href="http://domain.tld/post#comment-01" title="on Post Title">Comment Author:<br />
		<div>This is the first 50 characters of the first most recent comment</div></a>
	</li>
	<li>
		<a href="http://domain.tld/post#comment-01" title="on Post Title">Comment Author:<br />
		<div>This is the first 50 characters of the first most recent comment</div></a>
	</li>
	<li>
		<a href="http://domain.tld/post#comment-01" title="on Post Title">Comment Author:<br />
		<div>This is the first 50 characters of the first most recent comment</div></a>
	</li>
</ul>

By editing the commented lines in the PHP script, you may specify alternate number of comments and characters.

Source: StylizedWeb (404 link removed 2015/03/12)




0