RSS atau really simple syndication merupakan sebuah dokumen XML yang dibangun sedemikian rupa yang akan menampilkan daftar dari sekumpulan data dan biasanya merupakan data yang terbaru, sehingga pengunjung lebih mudah untuk melihat perubahan data.
Ketika RSS dipanggil (direquest), maka akan mengembalikan dokumen XML berisi daftar data terbaru, yang nantinya di-parsing sama RSS client, dan ditampilkan pada client. Cara ini lebih mudah dan murah, karena user dapat memilih mana saja yang ingin dibaca lebih lanjut.
Dalam artikel ini akan dibahas cara membuat fitur RSS yang sederhana -banget- pada website kita. Pakai PHP tentu saja
Langkah pertama, yakinkan diri anda bahwa dokumen RSS adalah bertipe XML, jadi sedikit banyak anda mesti tau apa itu XML dan aturan mainnya.
Karena bertipe XML, output dari webserver ke client mesti menandakan hal tersebut. Banyak cara untuk itu, misalnya pake AddType pada konfigurasi Apache atau .htaccess, tapi dalam hal ini, kita gunakan fungsi Header.
Pada awal script, tuliskan seperti ini:
<?phpPada field tanggal mesti pake format RFC-822. Oleh karena itu script di atas menggunakan fungsi Date("r"), yang akan menghasilkan nilai tanggal dan jam dalam format RFC-822.
Header("Content-Type: text/xml");
echo '<rss version="2.0">
<channel>
<title>GnouBdilS Personal Website</title>
<link>http://www.gnoubdils.com/</link>
<description>10 Berita dan Artikel terbaru</description>
<language>en-us</language>
<pubDate>'.Date("r").'</pubDate>
<lastBuildDate>'.Date("r").'</lastBuildDate>
<generator>GnouBdilS Personal Website RSS Generator</generator>
<managingEditor>gnoubdils@gmail.com (GnouBdilS)</managingEditor>
<webMaster>gnoubdils@gmail.com (GnouBdilS)</webMaster>
';
Selanjutnya, menampilkan data RSS:
$rc = mysql_query('select *,UNIX_TIMESTAMP(tanggal)
AS pubDate from berita order by tanggal desc limit 0,10');
while ($r = mysql_fetch_array($rc))
{
$id = $r['id'];
$judul = htmlentities(strip_tags($r['judul']), ENT_QUOTES);
$keterangan = htmlentities(strip_tags($r['keterangan']), ENT_QUOTES);
$pubDate = strftime("%a, %d %b %Y %T %Z",$r['pubDate']);
echo "<item>";
echo "<title>$judul</title>";
echo "<link>berita.php?id=$id</link>";
echo "<description>$keterangan</description>";
echo "<pubDate>$pubDate</pubDate>";
echo "</item>";
}
echo "</channel></rss>";
?>
Karena isi RSS cuma daftar dokumen terbaru, mestinya yang ditampilkan cuma record terbaru saja (biasanya per tanggal). Disini digunakan LIMIT 0, 10, yaitu 10 record terbaru.
Untuk meyakinkan bahwa format RSS anda benar, silakan masukkan RSS anda ke :
Feed Validator
Untuk lebih jelas mengenai rss silahkan klik Disini
0 comments:
Post a Comment