22 Apr 2008 16:40:40 WIB,under category PHP (237 views)
Baru saja saya menulis script kecil untuk mengambil gambar secara acak dari account Flickr saya. Script ini membutuhkan CURL dan tidak membutuhkan library XML apapun karena RSS feed dari Flickr saya perlakukan seperti file teks biasa.
Saya memanfaatkan fungsi yang pernah saya tulis sebelumnya, yaitu fungsi untuk mengambil konten suatu URL ke dalam suatu variabel:
<?php
function get_content_of_url($url){
$ohyeah = curl_init();
curl_setopt($ohyeah, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ohyeah, CURLOPT_URL, $url);
$data = curl_exec($ohyeah);
curl_close($ohyeah);
return $data;
}
?>Dan yang kedua adalah fungsi yang baru saja saya tulis. Fungsi ini akan membaca RSS feed dari account saya di Flickr lalu memilah-milah dan mengeluarkan satu link gambar saja:
<?php
function flickrize($url){
$stream = get_content_of_url($url);
$datas = explode("\n",$stream);
foreach($datas as $data){
if(eregi('<link rel="enclosure" type="image/jpeg"',$data)){
$image = str_replace('<link rel="enclosure" type="image/jpeg" href="','',$data);
$image = str_replace('" />','',$image);
$pics[] = trim($image);
}
else{
continue;
}
}
$out = array_rand($pics);
return $pics[$out];
}
?>Cara menggunakannya sangat mudah, hanya dengan memasukkan URL dari RSS feed saja. Silahkan Anda buka halaman Flickr Anda lalu view source dari halaman tersebut. Temukan bagian berikut:
<link href="http://l.yimg.com/www.flickr.com/css/c_flickr.css.v1.826.14" rel="stylesheet" type="text/css">
<link rel="alternate" type="application/atom+xml" title="Flickr: Photos &amp; Video from sandalian Atom feed" href="http://api.flickr.com/services/feeds/photos_public.gne?id=94992356@N00&lang=en-us&format=atom">
<link rel="alternate" type="application/rss+xml" title="Flickr: Photos &amp; Video from sandalian RSS feed" href="http://api.flickr.com/services/feeds/photos_public.gne?id=94992356@N00&lang=en-us&format=rss_200">
<link rel="shortcut icon" type="image/ico" href="/favicon.ico">Nah, link menuju RSS feed adalah http://api.flickr.com/services/feeds/photos_public.gne?id=94992356@N00&lang=en-us&format=rss_200
. Mari kita gunakan dalam sampel:
<?php
echo flickrize("http://api.flickr.com/services/feeds/photos_public.gne?id=94992356@N00&lang=en-us&format=rss_200"); ?>Dan outputnya adalah http://farm1.static.flickr.com/43/79290443_6e9f8581f0_o.jpg
, tinggal gunakan dalam tag IMG saja bukan?
Sebagai curhat colongan, script di atas saya gunakan dalam mainan saya yang baru di http://hi.sandalian.com. Desainnya ngambil dari desain web saya jaman jadul, antidiansastro.com (sudah mati). Selamat bersenang-senang ^_^
Goen
22 Apr 2008 17:38:01Sampeyan bisa bikinin buat yang Last.fm juga pow? Yang di WP plugin sekarang Last.fm banyak yang ga gitu bagus.... :|Belum pernah nyoba Last.fm tapi ntar coba saya liat-liat dulu.funkshit
23 Apr 2008 12:20:00ngomong.. yang di hi.sandalian mainan apa e ???
kok cuman gmbar doank .. .Ruud
05 May 2008 09:07:36Kok yang di hi.sandalian cuma satu page aja ya..
Random photo-nya mana ya ?Jauhari
06 May 2008 07:20:24Kenapa kok gini kang?
+++
Fatal error: Call to undefined function get_content_of_url() in /Users/jauhari/Sites/Personal/wp-tester/test/flickr.php on line 3
+++
Mohon BimbingannyaJauhari
06 May 2008 08:05:40Sik mas ketoe ada fungsi belum tak masukkan :D
Yeni Setiawan
A happy living programmer and Opera (browser) lover. When you know me more, you will hate me more. Please beware..
No Copyright 2006 - 2008 sandalian.com. You're granted rights to use any resources from this place freely!