Wawan

Recent Comments dengan Gravatar

| Poer | Themes

Ada beberapa cara untuk menampilkan komentar terbaru pada halaman depan yang di lengkapi dengan gambar Gravatar komentatornya, berikut ini beberapa diantaranya.

1. Menggunakan Plugin Get Recent Comments

Pada halaman setting plugin ini, masukan template komentar seperti berikut ini:

1
2
3
4
5
6
<li class="recent-coments">
 
     <div style="margin-left: 42px;"><strong>%comment_author</strong><br />
          %comment_excerpt
     </div>
</li>

Dan buat css style class “recent-comments” dan “recent_gravatars” yang disesuaikan dengan tema blog kita. Untuk memberikan gambar alternatif ketika komentator tidak mempunyai Gravatar, kita bisa mengatur gambar latar di class “recent_gravatars” tadi.

Sesuaikan juga besar dari gambar Gravatarnya sesuai dengan kebutuhan kita dengan cara mengubah ukuran tinggi dan lebar gambarnya.

2. Manual atau query langsung ke database.

Cara kedua ini aku temukan pada tema Dark yang sedang kupakai saat ini, dengan sedikit modifikasi berupa tambahan sebuah fungsi sederhana untuk mengutip isi komentarnya, karena menurutku akan lebih bagus menampilkan kutipan komentarnya dari pada sekedar tanggal komentar di berikan.

Untuk menggunakan cara manual ini, letakkan fungsi berikut pada file function.php template yang kita gunakan, dan kemudian panggil fungsi “recent_cmts” ini dari sidebar.php atau tempat lainnya sesuai kebutuhan kita.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<?php
// Recent Comments with Gravatars
function recent_cmts($num) {
	global $wpdb;
	$query = ("SELECT ID, post_title, comment_author, comment_id, comment_author_email, comment_date, comment_post_ID, comment_content FROM  $wpdb->posts, $wpdb->comments WHERE $wpdb->posts.ID=$wpdb->comments.comment_post_ID AND $wpdb->comments.comment_approved = '1' AND $wpdb->comments.comment_type = '' AND comment_author != 'wawan' ORDER BY $wpdb->comments.comment_date DESC LIMIT $num");
	$result = mysql_query($query);
	while ($data = mysql_fetch_row($result)) {
		echo '<li class="recent-cmts">';
		echo '<img style="float: left; margin-right: 10px; padding: 3px; background: #0b245b; border: 1px solid #051236;" src="http://www.gravatar.com/avatar.php?gravatar_id=';
		echo md5($data[4]);
		echo '&amp;size=24&amp;default=';
		echo bloginfo('template_url');
		echo '/images/default_24.gif';
		echo '" alt="';
		echo $data[2];
		echo '&#39;s Gravatar" height="24" width="24" class="recent_gravatars" />';
		echo '<div style="margin-left: 42px;"><strong>';
		echo $data[2];
		echo '</strong><br/>';
		content_excerpt($data[7]);
		echo '</div>';
		echo '</li>';
	}
}
 
function content_excerpt($content){
	$content = substr($content, 0, 60);
	$pos = strrpos($content, ' ');
	if ($pos>0) {
		$content = substr($content, 0, $pos);
	}
	echo $content.'...';
}
?>

Pada baris ke lima, ganti comment_author != ‘wawan’ dengan user name yang di pake untuk login ke blog kita.

Pada baris ke 33, ganti angka 60 pada substr($content, 0, 60); dengan panjang maksimum dari komentar yang ingin ditampilkan.

Pilihan lainnya kita bisa menggabungkan fungsi ‘get_avatar’ yang baru (wp2.5) dengan fungsi diatas, tapi karena prinsipnya sama, dan cara diatas menurutku lebih fleksibel, jadi ga aku tulis disini.

Salam WordPress.

Related Entries:

Random Entries:

Tinggalkan Komentar Anda