Skip to content

Excerpting Recent Post di sidebar

September 13, 2011

Setelah kita kenal dengan Excerpt di Posting dan resume pada wordpress, maka kita pun sebenarnya bisa memotong title pada Recent Post Sidebar jika diperkirakan terlalu panjang. Selain dengan mencari pluggins, kita bisa melakukannya dengan : Editing WordPress itu sendiri.

Theme WordPress
Biasanya paada Theme WordPress, jika tidak terdapat widget yang dipasang, maka Theme memiliki widget standard sendiri. Widget bawaan dari themes ini biasanya tersimpan di {dir_wp}/wp-contents/themes/nama_themes/sidebar.php. Kira-kira seperti demikian source code yang ada:


Namun jika widget Recent Post dipasang, maka code diatas tidak lagi digunakan, melainkan akan menggunakan function widget() yang terdapat pada default-widget.php pada direktori wp-includes. Pada fungsi tersebut terdapat bagian :


Perhatikan pada bagian the_title(). The title tersebut terletak pada file wp-includes/post-template.php, bukalah file tersebut. Saya melakukan penambahan fungsi untuk mempermudah membedakan antara keduanya. Carilah fungsi the_title() kira-kira akan didapatkan seperti demikian:

function the_title($before = '', $after = '', $echo = true) {
	$title = get_the_title();

	if ( strlen($title) == 0 )
		return;

	$title = $before . $title . $after;
	if ( $echo )
		echo $title;
	else
		return $title;
}

Coba lakukan seperti yang saya lakukan, tambahkan dibawah fungsi the title diatas tersebut menjadi seperti demikian:

Ingat! Copy dulu file tersebut sebelum mengubah… 2 file: post-template.php dan default-widget.php

function the_title($before = '', $after = '', $echo = true) {
	$title = get_the_title();

	if ( strlen($title) == 0 )
		return;

	$title = $before . $title . $after;
	if ( $echo )
		echo $title;
	else
		return $title;
}


function the_title_excerpt($before = '', $after = '', $echo = true) {
	$title_1 = get_the_title();
	//echo $title_1;
   $title_excerpt = substr($title_1, 0, 30);
//echo $title_excerpt;
	if ( strlen($title_excerpt) == 0 )
		return;
   if(strlen($title_1)>30){
   $dot = "...";
   }else{
   $dot = "";
   }
	$title_excerpt = $before . $title_excerpt . $after . $dot;

	if ( $echo )
		echo $title_excerpt;
	else
		return $title_excerpt;
}



Kita tambahkan sebuah fungsi bernama the_title_excerpt(), dimana the_title_excerpt() ini melakukan pengambilan sebanyak 30 hurup dari title yang didapat oleh fungsi get_the_title(); Jika hasilnya lebih dari jumlah hurup dalam judul artikel akan ditambahkan tanda …

Setelah selesai, buka kembali file default-widget.php, dan lakukan pengubahan dari


menjadi


Simpan kedua file tersebut, dan pasanglah widget Recent Post anda, dan lihatlah apa yang terjadi untuk nama artikel yang lebih dari 30 karakter? Sukses? tentunya sukses.. Jika tidak, saya siap tanggung jawab hehehe…

Semoga Berguna

 

http://bimosaurus.com/2011/09/13/excerpting-recent-post-di-sidebar/

 

bimosaurus
—eof—

 

 

 

From → Tak Berkategori

Tinggalkan sebuah Komentar

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

%d blogger menyukai ini: