Membuat Related Post WordPress Dengan PHP
December 25th, 2009 Under Internet, Wordpress | 148 CommentsUntuk menampilkan related post pada wordpress kebanyakan blogger, menggunakan plugin seperti wordpress related plugin, yarpp, related post by category dkk seperjuangannyalah. Namun setelah saya selidiki (ala) plugin-plugin ini lumayan banyak memakan resource pada server hostingan khususnya buat yang menggunakan paket shared hosting dan mempunya postingan yang lumayan banyak.
Untuk menghindari akibat-akibat yang tidak diinginkan dan untuk mengoptimalisasikan engine wordpress , ada baiknya sebagai alternatif menggunakan kode php untuk meggantikan plugin-plugin tersebut. Secara mudahnya buka singel.php pada theme yang anda gunakan dan tambahkan kode php berikut. (Sebelumnya Backup dulu file single.php anda).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | <?php $this_post = $post; $category = get_the_category(); $category = $category[0]; $category = $category->cat_ID; $posts = get_posts('numberposts=6&offset=0&orderby=post_date&order=DESC&category='.$category); $count = 0; foreach ( $posts as $post ) { if ( $post->ID == $this_post->ID || $count == 5) <!-- banyak related post yang ditampilkan --> { unset($posts[$count]); } else { $count ++; } } ?> <?php if ( $posts ) : ?> <div> <strong>Related Posts</strong> <!-- Judul, bisa diganti --> <ul> <?php foreach ( $posts as $post ) : ?> <li><a href="<?php the_permalink() ?>" title="<?php echo trim(str_replace("n"," ",preg_replace('#<[^>]*?>#si','',get_the_excerpt()))) ?>"><?php if ( get_the_title() ){ the_title(); }else{ echo "Untitled"; } ?></a></li> <?php endforeach // $posts as $post ?> </ul> </div> <?php endif // $posts ?> <?php $post = $this_post; unset($this_post); ?> |
1 2 3 4 5 6 7 | <?php the_content(__('')); ?> -->pastekan kira-kira disini, sesuaikan saja dengan theme yang anda gunakan <divclass="meta-footer"> |
Kode php tersebut akan menampilkan 5 postingan yang terkait, sesuai dengan kategori postingan anda. Jika anda menggunakan kode php untuk melihat request query pada database wordpress, lihat saja perbandingan antara menggunakan plugin dan kode php.




hpnugroho
relatednya hanya berdasarkan category saja ato dari tags juga ?
[Reply]
December 26th, 2009 at 4:21 pm
Berdasarkan kategori aja Om, sebenarnya secara logika bisa saja diambil dari tags juga tapi sayangnya ilmu saya belum nyampe kesono..
[Reply]
December 26th, 2009 at 10:40 pm
Anda bisa bereksperimen sebebas-bebasnya, dengan catatan pada server local. By category, by tags, bay artikel, by slug, dan bye-bye…
[Reply]
December 28th, 2009 at 9:14 pm
mmmmm…
Andy
Wah saya malahan pake plugins…
[Reply]
December 26th, 2009 at 4:23 pm
Dulu saya pakai plugin juga om, tapi sekarang ganti ke kode php aja. menurut saya mah kalo postingannya sedikit ataupun blognya menggunakan paket layanan yang lebih tinggi dari shared hosting sebenarnya relatif gak jadi masalah kok menggunakan plugin.
[Reply]
Andy
Otak saya gak sampe kesana
[Reply]
December 26th, 2009 at 4:24 pm
Ah masa sich…
[Reply]
Andy
Saya coba ah..
[Reply]
December 26th, 2009 at 4:25 pm
Monggo..
[Reply]
peri
salam kenal
[Reply]
December 26th, 2009 at 4:26 pm
Salam kenal juga..
[Reply]
December 26th, 2009 at 10:39 pm
[Reply]
December 28th, 2009 at 9:10 pm
kyra.curapix
terima kasih atas sarannya mas
[Reply]
December 26th, 2009 at 4:27 pm
Santai aja Om..
[Reply]
yangputri
sama kek komennya andy
otak saya gak sampe kesana
xixixixixixixi
[Reply]
December 26th, 2009 at 7:57 pm
Ah masa sich, kalo memang gak sampe yang disampein tuan putri..
[Reply]
Nugra
mas deka dah saya coba dilocalhost,,
tapi kok pas saya pasang tulisan yang dibawah related postnya itu sama yah dengan judul artikel kita,,
contoh,judul artikel “bening – bening” nah ntar isi dari related postnya itu sendiri semuanya juga “bening -bening”
[Reply]
December 26th, 2009 at 7:56 pm
Pertama : Kok contoh judulnya “bening-bening”..
Kedua : saya sudah coba gan baik online maupun offline tapi gak ada masalah yang seperti itu.
Ketiga : Saran saya coba liat lagi kode phpnya [nugra kan jago kode-mengkode-dikode-perkodean php gitu] dan liat lagi ada gak postingan yang mempunyai kategori yang sama.
[Reply]
December 26th, 2009 at 10:38 pm
Bening lagi….ach….bening lagi…
[Reply]
December 28th, 2009 at 9:11 pm
Wajar dunk..
December 27th, 2009 at 8:22 am
jawaban yang pertama : wah nggak tau kenapa judulnya “bening – bening” langsung terlintas aza dipikiran,,,
jawaban kedua dan ketiga : sekrang dah mau kok mas karena dari themenya aza mas
[Reply]
December 28th, 2009 at 9:13 pm
1 : mmmm kebiasaan anak muda..

2 & 3 : Okelah kalo begeto..
marsudiyanto
Makasih telah berbagi ilmu…
Sukses buat Mas Deka…
[Reply]
December 28th, 2009 at 9:06 pm
Sukses juga buat Oom, salam hangat dari Bandung alias kota kembang and bening-bening..
[Reply]
MasEDI Belajar NgeBlog
sip mas deka, yg irit resource ginian yg sy cari.
cm syngnya ini msh related by category ya, pdhl yg dimaukan utk related post kan stidaknya terrelasi baik scr kategori, tags, date maupun keywords.
ditunggu versi selanjutnya
[Reply]
December 28th, 2009 at 9:04 pm
Menurut logika saya mah kang mas semakin banyak parameter yang dijadikan relasi untuk related post selain kategori, tentunya semakin besar juga resource yang dibutuhkan pada query database. toh hitung-hitungannya tidak jauh berbeda dengan menggunakan plugin. lebih sederhana menggunakan plugin saja dengan parameter seperti itu [tags, date, keywords, dsbnya]…!
So menurut hemat saya dengan parameter hanya di kategori dapat meminimalisasikan permintaan query ke database sehingga mengurangi bebas server. dan saya kira untuk postingan yang lumayan banyak parameter di kategori sudah lebih dari cukup kok kang mas. Just My Opinion.
mmm versi selanjutnya..??
[Reply]
December 29th, 2009 at 9:42 am
mungkin parameter by tag akan menghasilkan related post yang lebih akurat dari pada by categori. tapi tetap saja, menggunakan teknik tersebut belum mumpuni. Tag yang sama, belum tentu juga tulisannya rada-rada nyambung.
[Reply]
December 30th, 2009 at 5:14 am
Sepertinya karena satu postingan belum tentu mempunya tag yang sama dengan postingan yang lain. So balik kepada authornya gimana ngasih tag ke sebuah postingan Mr. Just My Opinion.