15 December 2009 ~ 1 Comment

wp hack: related post dengan short code

awebs.net

Kemarin saya sudah menuliskan tentang cara membuat related post tanpa menggunakan plugins di tulisan berikut ini. Nah jika dengan cara tersebut maka kita akan mengalami kesusahan karena mesti edit thema dan harus tahu dimana kita harus meletakkan related post. Selain itu kita juga harus memperhatikan css thema kita supaya nanti tampilan blog kita tidak menjadi acak – acakan. Membuat related post dengan short code akan memang juga masih mengedit bagian file dari thema kita tetapi lebih mudah karena file yang dimaksudkan adalah pada file functions.php

Kita paste code- code dibawah ini pada file functions.php thema yang kita gunakan.


<?php

/*

Mulai di copy dari sini tanpa tag pembuka PHP

*/

function related_posts_shortcode( $atts ) {

extract(shortcode_atts(array(

'limit' => '5',

), $atts));

global $wpdb, $post, $table_prefix;

if ($post->ID) {

$retval = '<ul>';

// Get tags

$tags = wp_get_post_tags($post->ID);

$tagsarray = array();

foreach ($tags as $tag) {

$tagsarray[] = $tag->term_id;

}

$tagslist = implode(',', $tagsarray);

// Do the query

$q = "SELECT p.*, count(tr.object_id) as count

FROM $wpdb->term_taxonomy AS tt, $wpdb->term_relationships AS tr, $wpdb->posts AS p WHERE tt.taxonomy ='post_tag' AND tt.term_taxonomy_id = tr.term_taxonomy_id AND tr.object_id  = p.ID AND tt.term_id IN ($tagslist) AND p.ID != $post->ID

AND p.post_status = 'publish'

AND p.post_date_gmt < NOW()

GROUP BY tr.object_id

ORDER BY count DESC, p.post_date_gmt DESC

LIMIT $limit;";

$related = $wpdb->get_results($q);

if ( $related ) {

foreach($related as $r) {

$retval .= '

<li><a title="'.wptexturize($r->post_title).'" href="'.get_permalink($r->ID).'">'.wptexturize($r->post_title).'</a></li>

';

}

} else {

$retval .= '

<li>No related posts found</li>

';

}

$retval .= '</ul>

';

return $retval;

}

return;

}

add_shortcode('related_posts', 'related_posts_shortcode');

/*

cukup di coppy sampai sini saja tanpa tag penutup PHP

*/

?>

Nah setelah itu cara menggunakannya pun sangat mudah yaitu dalam setiap akhir post, kita ketikkan . Atau agar kita tidak kelupaan maka bisa juga membuat custom fields untuk ini.

Tulisan berkaitan




This article is copyright © 2010 

One Response to “wp hack: related post dengan short code”

  1. trik & cara ngeblog di blogspot 23 January 2010 at 11:48 pm Permalink

    mantap triknya ne..


Leave a Reply