Nov 11, 2008
Tutorial Cara Membuat Theme WordPress Sendiri ( Langkah #4 : Memuat Konten Blog Ke Dalam Theme)
oleh Fikri
Lanjutan dari seri Tutorial Cara Membuat Theme WordPress Sendiri. Untuk memastikan tidak ada miskonsepsi, kami rekomendasikan anda membaca seri post ini dari awal :
- Langkah #0 : Pendahuluan, serta tools – tools yang dibutuhkan
- Langkah #1 : Memahami Struktur File Theme WordPress
- Langkah #2 : Memahami Tag – tag XHTML & Kegunaannya, dan aturan penulisannya
- Langkah #3 : Membuat File Dasar Theme WordPress : index.php & style.css
Ok. Seperti pada post sebelumnya, awali dengan nyalakan XAMPP Control Panel, hidupkan Apache Server & Database MySQLnya, lalu buka aplikasi browser dan buka halaman dashboard administrator wordpress lokal anda ( http://localhost/wordpress/wp-admin ).
Pada post kali ini, kita akan “memuat” konten blog kepada Theme WordPress yang telah kita buat kemarin. Tepatnya, memasukkan konten blog ke halaman utama blog ( index.php ) yang filenya telah kita buat kemarin. Maka dari itu, coba perhatikan struktur halaman utama sebuah blog wordpress pada umumnya :
Dari contoh sebuah halaman utama blog wordpress ini, bisa kita simpulkan elemen – elemen yang membangun sebuah halaman blog wordpress :
- Header / Nama Blog
- Tagline Blog
- Menu ( Memberikan link ke page / halaman statis )
- Post & Metadata Post( Terdiri dari judul post, potongan/keseluruhan post, link read more, link komentar, link tags, dan link category )
- Link untuk membaca entri sebelumnya ( Previous page )
- Sidebar
Pada Post pendahuluan saya sudah menjelaskan mengenai rumus sederhana membuat wordpress theme :
WordPress Theme = XHTML + tag-tag PHP untuk memanggil fungsi & konten WordPress + CSS + Javascript ( untuk efek2 tertentu )
Pada Langkah #2 kita sudah mempelajari sedikit mengenai tag – tag XHTML. pada post kali ini, yang akan kita pelajari adalah bagian tag – tag PHP untuk memanggil fungsi & konten wordpress. Kita akan bahas satu persatu tag yang akan kita gunakan untuk memanggil elemen – elemen halaman utama blog wordpress.
Sekarang, buka file index.php pada folder latihantheme : kita mendapati satu file php yang masih kosong. Untuk pendahuluan, ketik / copy paste script ini diantara <head> dan </head> :
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title><?php bloginfo('name'); ?><?php wp_title(); ?></title>
<meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php bloginfo('charset'); ?>" />
<meta name="generator" content="WordPress <?php bloginfo('version'); ?>" /> <!-- leave this for stats please -->
<link rel="stylesheet" href="<?php bloginfo('stylesheet_url'); ?>" type="text/css" media="screen" />
<link rel="alternate" type="application/rss+xml" title="RSS 2.0" href="<?php bloginfo('rss2_url'); ?>" />
<link rel="alternate" type="text/xml" title="RSS .92" href="<?php bloginfo('rss_url'); ?>" />
<link rel="alternate" type="application/atom+xml" title="Atom 0.3" href="<?php bloginfo('atom_url'); ?>" />
<link rel="pingback" href="<?php bloginfo('pingback_url'); ?>" />
<?php wp_get_archives('type=monthly&format=link'); ?>
<?php //comments_popup_script(); // off by default ?>
<?php wp_head(); ?>
Ok, script apa ini?
script yang anda baru copy paste kan adalah tag php untuk memanggil informasi pada <head>. Kita sudah bahas pada langkah #2 bagian Tag Pembangun Halaman bahwa informasi yang ditulis diantara tag <head> dan </head> adalah informasi mengenai halaman web yang tidak ditampilkan pada browser. Informasi ini dimuat untuk kepentingan teknis, seperti SEO. Yup, hal yang teknis dan sudah strict. maka dari itu copy dan paste saja.
Header / Nama Blog
Header / Nama Blog dipanggil menggunakan tag sederhana ini :
<h1><a href="<?php echo get_option('home'); ?>/"><?php bloginfo('name'); ?></a></h1>
Ketik / Copy paste kan ke file index.php, diantara tag <body> dan </body>
Tagline Blog
Tagline Blog dipanggil menggunakan tag sederhana ini :
<?php bloginfo('description'); ?>
Ketik / Copy paste kan ke file index.php, diantara tag <body> dan </body>, setelah tag pemanggil nama blog
Menu ( Memberikan link ke page / halaman statis )
Menu untuk link ke halaman statis dipanggil menggunakan tag ini :
<ul>
<li class="first"><a href="<?php echo get_option('home'); ?>/">Home</a></li>
<?php wp_list_pages('sort_column=menu_order&depth=1&title_li=');?>
</ul>
Ok, yang ini agak sedikit tricky. kita bahas yang satu ini.
- pertanyaan pertama yang keluar adalah : mengapa menggunakan tag unordered list + list item? jadi list dengan bullet style dong? well, pertama kali mempelajari hal ini di blog Kang Didats, saya juga memiliki pertanyaan serupa. Jawabannya : Pada design menggunakan CSS, memang begini gayanya. nantinya, si menu akan dibuat memanjang secara horizintal, di styling menggunakan CSS
- selanjutnya, penjelasan list item pertama : <?php echo get_option(‘home’); ?>/ adalah tag untuk memanggil halaman home blog wordpress, maka dari itu ditaruh sebagai nilai dari atribur href yang melink ke home
- penjelasan list item kedua : <?php wp_list_pages(‘sort_column=menu_order&depth=1&title_li=’);?> merupakan tag untuk memanggil link ke page, dan menyusunnya sebagai list item.
Post & Metadata Post ( Terdiri dari judul post, potongan/keseluruhan post, link read more, link komentar, link tags, dan link category )
Waw, yang ini Lebih tricky lagi. bagian post ini menggunakan fungsi loop pada php. yang dimaksud dengan loop disini adalah pengulangan. Coba anda perhatikan, ada berapa post & metadata yang muncul pada halaman utama blog wordpress? jumlah pengulangan tergantung pada setting di bagian setting > reading. Namun intinya, bagian ini menggunakan fungsi loop, dengan parameter jumlah pengulangan yang di setting pada Setting > Reading.
ini tag yang dibutuhkan untuk memuat Post & Metadata post pada theme :
<?php if(have_posts()):?>
<?php while(have_posts()):the_post(); ?>
<div class="post" id="post-<?php the_ID(); ?>">
<h2><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a></h2>
<?php _e('Category :'); ?> <?php the_category(', ') ?> <?php _e('| ');?> <?php the_tags(); ?> <?php _e('| ');?> <?php the_time('M') ?> <?php the_time('d') ?>, <?php the_time('Y'); ?> <?php _e('by'); ?> <?php the_author(); ?>
<?php comments_popup_link('No Comments', '1 Comment', '% Comments'); ?> <?php edit_post_link('Edit', ' | ', ''); ?>
<?php the_content(); ?>
</div>
<?php endwhile; ?>
<div class="navigation">
<?php posts_nav_link(); ?>
</div>
<?php else: ?>
<div class="post">
<h2><?php _e("The page you've requested does not exist.
Suggestions:
<ul>
<li>Check the spelling of the address you typed</li>
<li>If you are still having problems, please contact us</li>
</ul>"); ?></h2>
</div>
<?php endif; ?>
Penjelasan :
- <?php if(have_posts()):?> mengecek, jika terdapat post pada database, maka lakukan perintah dibawah hingga tag <?php else: ?>
- <?php while(have_posts()):the_post(); ?> = ulangi ( loop ) konten sejumlah parameter pada setting > reading
- <div class=”post” id=”post-<?php the_ID(); ?>”> = mengelompokkan post dalam div khusus
- <h2><a href=”<?php the_permalink(); ?>” title=”<?php the_title(); ?>”><?php the_title(); ?></a></h2> = memuat judul post dan link, dalam ukuran header 2
- <?php the_content(); ?> = memuat konten post
- <?php _e(”); ?> = Memuat tulisan yang berada dalam ”
- <?php the_category(‘, ‘) ?> = Memuat category yang dimiliki post
- <?php the_tags(); ?> = memuat Tag yang dimiliki post
- <?php the_time(‘M’) ?> = Memuat data waktu ( bulan ) post di publikasi
- <?php the_time(‘d’) ?> = Memuat data waktu ( tanggal) post di publikasi
- <?php the_time(‘Y’); ?> = Memuat data waktu ( tahun ) post di publikasi
- <?php the_author(); ?> = Memuat data penulis post
- <?php comments_popup_link(‘No Comments’, ’1 Comment’, ‘% Comments’); ?> = Memuat jumlah komentar yang dimiliki post
- <?php edit_post_link(‘Edit’, ‘ | ‘, ”); ?> = Memuat link edit pada post, jika pengakses halaman blog merupakan author dari post
- <?php endwhile; ?> = Mengakhiri pengulangan ( loop ) yang dilakukan <?php while(have_posts()):the_post(); ?>
- <?php posts_nav_link(); ?> = Memuat link “Next Page” atau “Previous Page”
- <?php else: ?> = Mengakhiri perintah yang dilakukan <?php if(have_posts()):?> . Artinya, jika tidak ditemukan post pada database, kalukan perintah yang tertulis setelah <?php else: ?> hingga <?php endif; ?>
- <?php endif; ?> = mengakhiri semua perintah yang ada di bagian <?php if(have_posts()):?>
Well, a litle bit tricky kan?
Sidebar
yang ini lebih tricky lagi. perhatikan bagian ini baik – baik : Untuk mengelola sidebar, tim developer wordpress telah mengembangkan sistem widget, sistem yang memungkinkan anda menambah atau mengurangi konten sidebar hanya dengan drag and drop pada bagian Design > Widget. kami membahasakan ini dengan istilah widget ready.
nah, untuk memfungsikan fungsi widget ini, diperlukan file khusus bernama function.php. maka dari itu, buat file baru ( Ctr + N ) pada aplikasi notepad ++ anda, lalu ketik / copy paste script ini :
<?
if ( function_exists('register_sidebar') )
register_sidebars(1);
?>
Save pada direktori latihantheme dengan nama file function.php
sekarang, coba perhatikan : register_sidebars(1); . angka 1 disini berarti sistem wordpress akan membuat satu sidebar. Jika anda hendak membuat lebih dari satu sidebar, ganti saja jumlah dalam tanda kurungnya. untuk tutorial ini, kita hanya akan menggunakan satu sidebar saja. jadi tidak usah diganti dulu.
Sekarang, tag untuk memuat sidebar pada theme. Ketik / Copy Paste tag berikut pada file index.php, setelah tag <?php endif; ?> :
<?php dynamic_sidebar(1);?>
perhatikan : ada angka 1 disana. jika anda meregister sidebar lebih dari satu, maka anda perlu membuat beberapa tag seperti ini, dengan inisial angka berbeda. Namun pada tutorial ini, kita bermain denga satu sidebar saja dulu, jadi tidak usah diganti.
Bingung Mengetikkan kodenya secara terpisah? Ini Summarynya
!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title><?php bloginfo('name'); ?><?php wp_title(); ?></title>
<meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php bloginfo('charset'); ?>" />
<meta name="generator" content="WordPress <?php bloginfo('version'); ?>" /> <!-- leave this for stats please -->
<link rel="stylesheet" href="<?php bloginfo('stylesheet_url'); ?>" type="text/css" media="screen" />
<link rel="alternate" type="application/rss+xml" title="RSS 2.0" href="<?php bloginfo('rss2_url'); ?>" />
<link rel="alternate" type="text/xml" title="RSS .92" href="<?php bloginfo('rss_url'); ?>" />
<link rel="alternate" type="application/atom+xml" title="Atom 0.3" href="<?php bloginfo('atom_url'); ?>" />
<link rel="pingback" href="<?php bloginfo('pingback_url'); ?>" />
<?php wp_get_archives('type=monthly&format=link'); ?>
<?php //comments_popup_script(); // off by default ?>
<?php wp_head(); ?>
</head>
<body>
<h1><a href="<?php echo get_option('home'); ?>/"><?php bloginfo('name'); ?></a></h1>
<?php bloginfo('description'); ?>
<ul>
<li class="first"><a href="<?php echo get_option('home'); ?>/">Home</a></li>
<?php wp_list_pages('sort_column=menu_order&depth=1&title_li=');?>
</ul>
<?php if(have_posts()):?>
<?php while(have_posts()):the_post(); ?>
<div class="post" id="post-<?php the_ID(); ?>">
<h2><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a></h2>
<?php _e('Category :'); ?> <?php the_category(', ') ?> <?php _e('| ');?> <?php the_tags(); ?> <?php _e('| ');?> <?php the_time('M') ?> <?php the_time('d') ?>, <?php the_time('Y'); ?> <?php _e('by'); ?> <?php the_author(); ?>
<?php comments_popup_link('No Comments', '1 Comment', '% Comments'); ?> <?php edit_post_link('Edit', ' | ', ''); ?>
<?php the_content(); ?>
</div>
<?php endwhile; ?>
<div class="navigation">
<?php posts_nav_link(); ?>
</div>
<?php else: ?>
<div class="post">
<h2><?php _e("The page you've requested does not exist.
Suggestions:
<ul>
<li>Check the spelling of the address you typed</li>
<li>If you are still having problems, please contact us</li>
</ul>"); ?></h2>
</div>
<?php endif; ?>
<?php dynamic_sidebar(1);?>
</body>
</html>
Ok. sekarang kita memiliki 3 file : index.php yang sudah bisa memuat konten dari blog, function.php yang berisi fungsi widget, dan style.css. Sekarang, masuk Dashboard > Design > Theme, lalu activate Theme Latihan ini. Lihat tampilan theme latihan kita.
Yup, cukup untuk pembahasan post ini : Memuat Konten blog pada theme. Pada post selanjutnya kita akan membahas Styling Theme menggunakan CSS.
Ada pertanyaan? atau Ada langkah yang kurang jelas? Atau mungkin ada yang terlewat? izinkan kami mengetahuinya. silahkan sampaikan pandangan anda melalui kolom komentar
Enjoy!
Dapatkan update harian bloggingly GRATIS di RSS Reader anda! Subscribe sekarang RSS FEED BLOGGINGLY !
Apa itu RSS? Kenali RSS di halaman ini


aimyaya bilang,
Wah banyak juga..
Saya juga sudah nyoba lewat trial and error..
on 19 Nov 2008 / 15:40
F bilang,
Yup. agak panjang juga. saya tambahkan penjelasan2 dasar sih
on 20 Nov 2008 / 04:50
evan bilang,
z binggung dengan penjelasan anda?? z cuma mau nya apa si sebenarya fungsi edit css pada worpress
on 26 Nov 2008 / 10:40
fiarchan bilang,
Mas kalo buat yang 3 kolom gimana ya?
Soalnya mas kan ngasih contohnya cuma pake 2 kolom
on 09 Feb 2009 / 09:42
dedy bilang,
iya ,,, untuk kolomnya belum dijelaskan..
on 08 Jul 2010 / 15:17
Fikri bilang,
Kolom yang mana?
on 09 Jul 2010 / 10:22
jan bilang,
Makasih, keren banget.
Jadi tambah ilmu deh…..
on 16 Feb 2009 / 11:15
Himawan bilang,
wah,,krennnnn
on 14 Jul 2009 / 11:04
detnot bilang,
Bro, gimana kalo di sediakan source code script dr tutorial ini.
Coz kalo dr sini, ketika di paste ke macromedia tidak bisa di simpan karne encodenya berubah. trims
on 16 Jul 2009 / 13:03
japestinho bilang,
@Detnot
Ow begitu, tapi sudah dicoba untuk di copy paste ke notepad dulu? Setelahnya baru di copy paste ke dreamweavernya lagi
on 17 Jul 2009 / 00:34
Mphumsiey bilang,
kok waktu diactivate malah nongol tulisan Parse error: syntax error, unexpected ‘=’ in C:\Program Files\xampp\htdocs\website\wp-content\themes\latian\index.php on line 15
on 29 Jul 2009 / 17:03
regina bilang,
Mr, saya punya blog, tapi di halaman home-nya (index) link untuk menuju ke arsip posting sebelumnya tidak dapat berfungsi. Kalau diklik, maka akan tetap menuju ke bagian top dari halaman home. Berikut scriptnya:
<a href="”>Lihat artikel lainnya di dalam arsip
Bagaimana caranya agar script ini dapat berfungsi dan dapat menampilkan arsip-arsip blog sebelumnya?
Terima kasih atas jawabannya…
on 25 Aug 2009 / 10:09
samu bilang,
buat temen2 yang kesulitan ini http://beamermultimedia.beamerhost.com/files/latihan.zip
on 10 Sep 2009 / 12:39
ziganks bilang,
kok yang muncul :
Parse error: syntax error, unexpected ‘=’ in C:\xampp\htdocs\wordpress\wp-content\themes\Themelatihan\index.php on line 14
mohon bantuannya terima kasih
on 14 Oct 2009 / 23:12
Hangga Nuarta bilang,
Wah kok sampai di tahap ini templatenya error ya Mas dijalankan??? Pesannya gini:
Parse error: syntax error, unexpected T_STRING in C:\xampp\htdocs\wordpress\wp-content\themes\1stproject\index.php on line 33
Padahal baris kode ke 33 udah saya tulis sesuai dengan tutorial di atas:
Apanya yang salah ya???
on 08 Nov 2009 / 12:14
maskun bilang,
tutorial yang lengkap, terima kasih. Saya ingin merubah sedikit template yang sudah jadi. pada bagian menu hanya ada dua yaitu ‘Home’ dan ‘About’. saya ingin menambah ‘Contact Me’ caranya bagaimana ya? lalu penulisan ke halaman yang dituju bagaimana?
NB : yang saya dapatkan dari editor theme adalah skrip ini
div class=”nav”>
on 09 Jan 2010 / 21:55
Fikri bilang,
@maskun
Tidak perlu mengedit theme Pak. Cukup masuk ke dashboard > Pages > Add New.
Komentar Maskun jadi hilang karena ada tag-tag yang tidak diperbolehkan untuk masuk via komentar karena alasan keamanan
on 10 Jan 2010 / 11:11
maskun bilang,
alhamdulillah… ternyata semudah itu ya. terima kasih mas fikri. Tapi saya dah ganti template nih, soalnya di template yang lama kode di footernya gak ada(sebenarnya ada tapi bukan kode melainkan sesuatu yang gak jelas) padahal saya ingin memasukkan kode google analytic di footer.
on 10 Jan 2010 / 12:39
dieyna bilang,
@ziganks
masalahnya ada pada penulisan karakter (‘)
on 14 Jan 2010 / 23:44
Tips blog bilang,
Gile nih tutorial keren amat ya! thanks bro!
on 20 Mar 2010 / 10:39
Tutorial Cara Membuat Theme Wordpress Sendiri ( Langkah #5 : Mendesain Theme Menggunakan CSS ) bilang,
[...] Langkah #4 : Memuat Konten Blog Ke Dalam Theme [...]
on 10 Apr 2010 / 12:18
ibenxs bilang,
mas bisa buatin gak,,,,, hehehehehe
on 03 May 2010 / 10:55
Fikri bilang,
bisa, tapi ada biayanya
on 04 May 2010 / 05:26
agito bilang,
thanks infonya, tapi pengen tau cara nampilin script di blog seperti diatas gmana caranya?
on 07 May 2010 / 11:08
ivan bilang,
Wuih… orang jawa bilang “njlimet” artinya ribet… tapi nice tuttorial sir..:D lanjuuut…
on 10 May 2010 / 02:15
mahmud bilang,
tag untuk MENU belum dijelaskan diletakkan dimana…makasih
on 16 Aug 2010 / 03:14
kukuh bilang,
Mas klo nampilkan slide image di wordpress bagaimana. template scarlett-ku gak bisa tampil slider imagenya. mohon bantuannya
on 18 Aug 2010 / 14:34
ireal bilang,
komentar trakhir.
Very Newbie mo nanya, sya pke twenty teen themes tp pas mo ganti side widget ama buat page daftar isi kok nda bisa ya mas??.
side widget nya tetap itu2 aja n daftar isinya mlah menampilkan tulisan [archives], bukannya daftar posting sya.
<= mau icon sedih tp hafalnya cuma ini . Di mohon bantuannya.
klo buat theme sendiri ntar aja deh, udah baca #0-#4 trasa banget pusingnya.
on 05 Sep 2010 / 00:32
Fikri bilang,
Bisa kok. ganti saja di Dashboard > Appereance > Widget
on 11 Sep 2010 / 10:25
eric bilang,
sip. mantap bro, saya dah coba dan berhasil. makasih tutorialnya.
on 31 Dec 2010 / 16:23
ozimovic bilang,
mantap bro,,dikit2 jadi ngerti nich thanks
on 19 Jan 2011 / 10:25
shinegreen bilang,
maaf mas saya mau tanya,
ini tentang pembuatan sidebar yang mas kasih di tuorial di atas, yang mempunyai file function.php dan berisi code:
dan di file index.php ada code:
dibawah:
yag jadi pertanyaan saya,
1. mas kok di wid get ndak ke detek widget untk sidebar nya, dan menunjukan info ini:
No Sidebars Defined
The theme you are currently using isn’t widget-aware, meaning that it has no sidebars that you are able to change. For information on making your theme widget-aware
2. dan juga di theme nya yang saya buat sesuai tutorial dari mas, sidebarnya ndak nampil.
kira2 itu, saya salah dimananya ya mas?
oya saya pake wordpress 3.04 yg terbaru.
mohon jawabannya ya mas, sekarang saya sedang belajar buat theme sendiri.
maaf pertanyaan saya kebanyakan.
on 20 Jan 2011 / 17:57
shinegreen bilang,
komentar anda tengah menunggu moderasi.
maaf mas saya mau tanya,
ini tentang pembuatan sidebar yang mas kasih di tuorial di atas, yang mempunyai file function.php dan berisi code(kode tanpa tanda kutip):
/*
*/
dan di file index.php ada code:
/*
*/
dibawah:
/*
*/
yag jadi pertanyaan saya,
1. mas kok di wid get ndak ke detek widget untk sidebar nya, dan menunjukan info ini:
No Sidebars Defined
The theme you are currently using isn’t widget-aware, meaning that it has no sidebars that you are able to change. For information on making your theme widget-aware
2. dan juga di theme nya yang saya buat sesuai tutorial dari mas, sidebarnya ndak nampil.
kira2 itu, saya salah dimananya ya mas?
oya saya pake wordpress 3.04 yg terbaru.
mohon jawabannya ya mas, sekarang saya sedang belajar buat theme sendiri.
maaf pertanyaan saya kebanyakan.
on 20 Jan 2011 / 18:01
ziipungly bilang,
mas..masih berkaitan dengan .php namun bukan wordpress…begini jika kita buat sebuah web statis…namun disetiap contennya akan dimasukan aplikasi.php….dimana jika kita memasukan aplikasi.php itu yang berubah hanya bagian content saja sedangkan header, navigasi dan footer tetap ada….gimana mas..jika itu bukan web CMS
on 21 Jan 2011 / 22:41
okviyoandra akhyar bilang,
mkasih banget mas…
saya lagi mempraktekkan theme tutorial ini…
salam kenal
okviyoandra
on 16 Mar 2011 / 17:08
wikie bilang,
mas,,saya nyoba diatas ko error ea…
<meta http-equiv="Content-Type" content="; charset=” />
<meta name="generator" content="WordPress ” />
<link rel="stylesheet" href="” type=”text/css” media=”screen” />
<link rel="alternate" type="application/rss+xml" title="RSS 2.0" href="” />
<link rel="alternate" type="text/xml" title="RSS .92" href="” />
<link rel="alternate" type="application/atom+xml" title="Atom 0.3" href="” />
<link rel="pingback" href="” />
on 13 May 2011 / 14:51
Willy Merdiansyah bilang,
mas jika functu\ion.php menggunakan
register_sidebar(array(‘name’=>’Sidebar’,
bagaimana maksudnya ?
on 30 May 2011 / 11:59
heriandi bilang,
jadi bingung,,,,,,banyak amat sih
on 04 Aug 2011 / 11:23
Ave bilang,
Lanjutkan mas fikri..
mantap bener
on 27 Aug 2011 / 18:17