Saat awal membuat blog menggunakan wordpress, saya ingin setiap orang yang mengomentari akan saya masukkan ke Daftar Situs Keren. Saya sengaja tidak menggunakan fasilitas Blogroll yang sudah built-in di wordpress karena akan memakan banyak tempat di sidebar. Jika panjang vertikal sidebar melebihi panjang vertikal content, blog akan terlihat tidak sedap. Untuk itulah saya membuat halaman tersendiri dan url teman-teman saya masukkan secara manual.
Seiring bertambahnya komentar, lama-lama capek juga ya...
Akhirnya setelah semalaman mencoba, saya berhasil membuatnya otomatis. Jadi setiap orang yang berkomentar di blog yang menyabet juara 2 Lomba LiveBlogging nix 2008 di JEC 7 Mei 2008 lalu, maka link ke situsnya akan otomatis tampil di halaman itu.
![[image]](http://mowser.com/img?url=http%3A%2F%2Fboxstr.com%2Ffiles%2F2030161_x9op5%2Fsample-daftar-situs.png)
Di halaman "Daftar Situs Keren" tersebut saya hanya menggunakan kode
<!-- GravatarLinks -->. Kode itu nantinya akan digantikan oleh Page Template (page.php) di template yang saya pakai.Langsung saja (karena kodenya lumayan panjang...), ini adalah isi dari
page.php :<?php
// letakkan ini di bagian paling atas
ob_start();
?>
....
....
....
<?php
// letakkan ini dibagian paling bawah
$getGravatar = ob_get_clean();
// Cek apakah ada kode <!-- GravatarLinks -->
if (strstr($getGravatar, "<!-- GravatarLinks -->")) {
// Kode SQL untuk mengambil data komentar
// Pingback dan komentar admin tidak usah diambil
// Alamat email di kode SQL ini harus
// sama dengan alamat email admin
$sql = "SELECT comment_author_url, comment_author_email, comment_author " .
"FROM $wpdb->comments WHERE comment_type <> 'pingback' " .
"AND comment_author_email <> 'admin@bloganda.com' " .
"ORDER BY comment_author";
// Query Database
$getSites = $wpdb->get_results($sql);
if ($getSites) { // Jika ada hasilnya
foreach ($getSites as $Sites) {
$tmpSites = explode("/", $Sites->comment_author_url);
// Ambil nama domainnya saja : $tmpSites[2]
$commData[$tmpSites[2]]["Email"] = $Sites->comment_author_email;
// Perbesar setiap huruf awal dari kata
$commData[$tmpSites[2]]["Author"] = ucwords($Sites->comment_author);
}
$commOutput = array();
foreach ($commData as $Site => $commID) {
$commOutput[] = "<a target=\"_blank\" class=\"commAvatarLink\" " .
"href=\"http://" . $Site . "/\" title=\"" .
$commID["Author"] . "\">" .
"<img src=\"http://www.gravatar.com/avatar/" .
md5($commID["Email"]) .
"?s=8&d=monsterid\" class=\"commAvatarImg\" alt=\"" .
$commID["Author"] . "\"/> " . $commID["Author"] .
"</a>\n";
}
}
// Ubah <!-- GravatarLinks -->
echo ($commOutput) ? str_replace("<!-- GravatarLinks -->", implode("", $commOutput), $getGravatar) : $getGravatar;
} else { // Jika kode <!-- GravatarLinks --> tidak ada
echo $getGravatar; // tampilkan apa adanya
}
?>Daftar url yang dihasilkan akan menampilkan gambar Gravatar berukuran 8x8 pixel dari email komentator.
Untuk mengcustom tampilannya, Anda bisa menggunakan CSS dengan class yang tersedia, yaitu :
commAvatarLink untuk tag <a>, dan commAvatarImg untuk tag <img>.Saya sendiri mengcustomnya seperti di bawah ini melalui
style.css :
.commAvatarImg {
border: none;
}
a.commAvatarLink {
padding: 0 5px;
}
a.commAvatarLink:hover {
background: #f2f2f2;
}
Jika Anda tertarik, silahkan mencobanya :-)


![[image]](http://mowser.com/img?url=http%3A%2F%2Fwww.boxstr.com%2Ffiles%2F1903630_yghu7%2FMuhasabahFirefoxSmall.png)
![[image]](http://mowser.com/img?url=http%3A%2F%2Fwww.boxstr.com%2Ffiles%2F1903631_jhjme%2FMuhasabahMaxtonSmall.png)

![[image]](http://mowser.com/img?url=http%3A%2F%2Fwww.ciao.com%2Fload_file.php%3FFilename%3D%2Fimages%2Fbanner%2Faffiliate%2F468x60_make_opinions_pay.gif%26AffiliateId%3D5273285)


