Studi Kasus : Mendapatkan Feed situs lain dengan RSS Reader SimplePie, menampilkannya, dan menyimpannya ke dalam database.
Kebutuhan : SimplePie library, download here. Webserver Packages, already installed.
RSS (Really Simple Syndication) adalah format berbasis XML yang digunakan untuk sharing dan delivering konten dari web yang pada umumnya diupdate secara regular. Sedangkan istilah ‘feed‘ mengacu pada output dari RSS yang dapat dibaca dengan RSS Feed Reader (pembaca rss feed). SimplePie merupakan RSS Feed Reader/Parser yang cukup terkenal (dan paling saya sukai tentunya), cara kerja dari RSS Feed Parser semacam ini adalah dengan membaca format XML yang terdapat dalam RSS Feed yang kita tentukan sendiri.
Ok, langsung praktik saja.
Step 1 : Persiapkan Database
- Buat database dengan nama db_tutorial
- Siapkan tabel dengan nama tb_rss, dengan struktur tabel seperti gambar dibawah ini.

- Done with the database!
Step 2 : Persiapkan Folder Kerja
- Buat folder baru di document root anda dengan nama folder rss
- Buat sebuah folder didalam folder rss dengan nama cache (…/rss/cache)
- Copy file SimplePie.inc (hasil download – yang berada dalam file ZIP simplePie) ke dalam folder rss.
Step 3 : Membuat Koneksi ke database
- Buat script untuk melakukan koneksi ke database, yaitu dengan ketikkan script dibawah ini,
<?php
//file name : connect.php
//author : littleflow3r
$host = "localhost";
$user = "root"; //sesuaikan dengan setting mysql
$pass = ""; //sesuaikan dengan setting mysql
$dbName = "db_tutorial";
mysql_connect($host, $user, $pass);
mysql_select_db($dbName)
or die ("Connect Failed !! : ".mysql_error());
?> - Simpan dalam folder rss dengan nama connect.php
Step 4 : Inisialisasi SimplePie
- Ketikkan script dibawah ini,
<?php
//file name : initRSS.php
//author : littleflow3r
require_once 'simplepie.inc';
//initialize simplePie
$feed = new SimplePie('http://localhost/websmsmasking/feed/rss');
$feed->set_cache_location('../rss/cache/');
$feed->set_feed_url('http://localhost/websmsmasking/feed/rss');
$feed->init();
$feed->handle_content_type();
?> - Simpan dalam folder rss dengan nama initRSS.php
- Keterangan : Cara kerja dari SimplePie RSS Parser adalah dengan membaca format XML yang terdapat dalam RSS Feed. Code diatas digunakan untuk menginisialisasi SimplePie, dengan memasukkan alamat dari rss kita [baris 06 dan baris 08]. Sebagai contoh, saya memakai sample alamat rss adalah localhost/websmsmasking/feed/rss –> feed dari aplikasi lokal saya. Anda bisa mengganti alamat ini dengan alamat rssfeed yang anda inginkan, namun untuk mendapatkan feed dari situs online, anda juga harus menjalankan program secara online (terhubung ke internet, karena simplepie akan mengakses alamat dari feed tersebut secara langsung.)
Step 5 : Menampilkan Feed
- Ketikkan script berikut,
<?php
//file name : rss.php
//author : littleflow3r
include 'initRSS.php';
include 'connect.php';
//get the feed and show it
echo "<h1> RSS News Update </h1>";
foreach ($feed->get_items(0,4) as $item):
$permalink = $item->get_permalink();
$title = $item->get_title();
$desc = $item->get_description();
echo '<a href="'.$permalink.' ">'; echo $title; echo '</a>';
echo "<br>";
echo $desc;
echo "<br>"; echo "<br>";
//insert to database
$q = "INSERT into tb_rss (link, title, description) VALUES('$permalink','$title','$desc')";
$result = mysql_query($q);
endforeach;
?> - Simpan dalam folder rss dengan nama rss.php
- Keterangan : Baris 08 menunjukkan looping dengan foreach sejumlah feed yang didapat dari alamat RSS yang telah ditentukan, dengan menggunakan fungsi
get_items(0,4), maksudnya adalah mengambil 4 Feed items dimulai dari record ke 0.
Baris 09 adalah menyimpan permalink dari setiap items yang didapat dalam variabel$permalink
Baris 10 adalah mendapatkan judul feed dengan fungsi get_title kemudian disimpan dalam$title.
Baris 11 adalah mendapatkan deskripsi dari feed dengan fungsi get_desc kemudian disimpan dalam$desc.
Step 6 : Testing Code
- Buka browser, jalankan http://localhost/rss/rss.php
- Anda akan melihat feed dari alamat rss yang anda masukkan tadi telah tertampil seperti gambar dibawah,

- Cek database anda, lihat bahwa tb_rss telah terisi dengan content rss dari alamat feed anda.

Okay, Done. Happy Trying! Happy Coding ![]()
Hal yang juga menarik:
Hak Cipta
Semua skrip dan teknik dalam artikel di itx.web.id boleh digunakan sebagaimana kehendakmu tanpa perlu mencantumkan sumber. Kamu tidak boleh mengkopi seluruh artikel, dalam Bahasa Indonesia ataupun diterjemahkan ke dalam bahasa lain.
This post is also available in: English
English
Indonesia
wah ini nih saya demen banget ama website yang kayak gini… (hassle)
mas saya minta bantuan donk…
sulit nih nampilin rssnya dihalaman utama kayak http://www.cari-info.co.cc .. template saya persis kayak gitu juga mas..
lah ini kan kayak gini mas…
—————————–
<?php
//file name : rss.php
//author : littleflow3r
include 'initRSS.php';
include 'connect.php';
—————————-
(idiot)
nah file2 di wordpress tuh kan masuk2 mas /wp-content/themes/bla bla bla…
nah gimana supaya jalan tuh rss / nyatuinnnya di halaman utamanya ato di index templatenya…
makasih mas, ditunggu ya jawabannya…
bener. semua file templat memang di wp-content/themes/nama-theme/
kalo mo jadiin satu ya tinggal taroh di lokasi file templat (theme) tsb.
trus buat page template yg berisi kode tsb. http://codex.wordpress.org/Pages#Creating_Your_Own_Page_Templates .
hbis itu buat suatu page menggunakan page template tsb yg dijadikan halaman depan http://codex.wordpress.org/Creating_a_Static_Front_Page
beres dah
oke mas, saya akan coba dulu… kalo ga bisa kemari lagi… hahahhah (hassle) (lmao)
@mas nanang
uhm maksud masnya nih mau nampilin rss di WordPress ya? di halaman template nya, atau di postingan?
soalnya kalau tutorial diatas kan buat web/aplikasi yang di develop sendiri / bukan pake CMS.
Tapi kalau cuman mau nampilin rss di template wordpress, kalau gak salah kan cukup pakai widget sudah bisa ta?
heheh, maaf mungkin belum bisa bantu..
btw, the author is a girl
p.s. mungkin yang punya website, mas itx bisa bantu mas nanang ini
mbok klo mo ngreply klik reply
khn udah disediain threaded comments
hihihih
namanya juga hoby coding mbak… mo ditaruh mana aja ya enak, asalkan bisa (lol)
ihihihihihi mbak polos banget dech.. biki gemes aja..
ini di taruh di postingan mbak.., jadi postingannya di ilangin.. rss ini ntar terganerate ama SE.. postingan mbak kan ada simplepienya tuh (woot) masak mbak ga tau simplepie digunain untuk apa dikalangan wordpress’ers… hehehe (devil) kalo pake widget kan cuma nampilin aja mbak
maklum bukan pengguna fanatik wordpress (lmao)
kok saya nggak bs jalan ya?? simplepienyas etelah di download di pindah ke htdocs?? apa harus di apaain kodingan nggka ada yg salah tp nggak mau jalan
dan muncul
Warning: require_once(simplepie.inc) [function.require-once]: failed to open stream: No such file or directory in C:\xampp\htdocs\rss\initRSS.php on line 4
Fatal error: require_once() [function.require]: Failed opening required ‘simplepie.inc’ (include_path=’.;C:\xampp\php\PEAR’) in C:\xampp\htdocs\rss\initRSS.php on line 4 (rofl) mohon bantuannya…
baca step-by step tutorial ini dg seksama
ini kalo dibuka berulang databasenya banyak yang ganda
Warning: require_once(simplepie.inc) [function.require-once]: failed to open stream: No such file or directory in C:\xampp\htdocs\rss\initRSS.php on line 4
Fatal error: require_once() [function.require]: Failed opening required ‘simplepie.inc’ (include_path=’.;C:\xampp\php\PEAR’) in C:\xampp\htdocs\rss\initRSS.php on line 4
eror knp yah?
thankx
kalo buat bisa tampil gambar di comment kayak gini gimana, ya??? (gym)
(idiot)
nice info gan …… kita tunggu artikel selanjutnya …. (tongue)
terima kasih mas sudah bagi2 ilmu ..
Gan ane muncul begini:
Strict Standards: Non-static method SimplePie_Misc::entities_decode() should not be called statically, assuming $this from incompatible context in C:\xampp\htdocs\rss\simplepie.inc on line 9203
Strict Standards: Non-static method SimplePie_Misc::entities_decode() should not be called statically, assuming $this from incompatible context in C:\xampp\htdocs\rss\simplepie.inc on line 9203
Strict Standards: Non-static method SimplePie_Misc::entities_decode() should not be called statically, assuming $this from incompatible context in C:\xampp\htdocs\rss\simplepie.inc on line 9203
Strict Standards: Non-static method SimplePie_Misc::entities_decode() should not be called statically, assuming $this from incompatible context in C:\xampp\htdocs\rss\simplepie.inc on line 9203
Strict Standards: Non-static method SimplePie_Misc::entities_decode() should not be called statically, assuming $this from incompatible context in C:\xampp\htdocs\rss\simplepie.inc on line 9203
Strict Standards: Non-static method SimplePie_Misc::entities_decode() should not be called statically, assuming $this from incompatible context in C:\xampp\htdocs\rss\simplepie.inc on line 9203
Strict Standards: Non-static method SimplePie_Misc::entities_decode() should not be called statically, assuming $this from incompatible context in C:\xampp\htdocs\rss\simplepie.inc on line 9203
Strict Standards: Non-static method SimplePie_Misc::entities_decode() should not be called statically, assuming $this from incompatible context in C:\xampp\htdocs\rss\simplepie.inc on line 9203
Strict Standards: Non-static method SimplePie_Misc::entities_decode() should not be called statically, assuming $this from incompatible context in C:\xampp\htdocs\rss\simplepie.inc on line 9203
Strict Standards: Non-static method SimplePie_Misc::entities_decode() should not be called statically, assuming $this from incompatible context in C:\xampp\htdocs\rss\simplepie.inc on line 9203
nanya donk… master2x sekalian…. memasang rss feed situs lain ke situs milik kita apakah melangar uu hak cipta? trs bagaimana ethicnya untuk memasang rss feed lain ke situs kita?
terimakasih
kalo ga salah, rss feed memang dimaksudkan untuk berlangganan content berita tapi kan ga komplit cuma penggalan awal nya saja dan ada link ke website mereka. justru RSS dimaksudkan utk promosi website mereka. Kalo ga mau dipasang ya ga usah mereka kasih link utk rss feed.
Mohon maaf kalo salah, begitu bukan admin?
Terima kasih… saya praktekan sudah ok.
thanks a lot yah mas….berguna banget buat aku yg masih nubie… :p