Fungsi PHP untuk Auto Convert URL menjadi Clickable Hyperlink

Fungsi yang sangat berguna untuk membuat url pada sebuah text menjadi link yang bisa di-click.

Cara pakainya tinggal masukkan string yang ada url nya kedalam fungsi make_clickable($string). Nanti semua kata yang mengandung format link seperti www dan http akan diubah menjadi clickable.

Fungsi berikut berasal dari wordpress yang saya cuplik dari sumber di sini

function _make_url_clickable_cb($matches) {
	$ret = '';
	$url = $matches[2];
 
	if ( empty($url) )
		return $matches[0];
	// removed trailing [.,;:] from URL
	if ( in_array(substr($url, -1), array('.', ',', ';', ':')) === true ) {
		$ret = substr($url, -1);
		$url = substr($url, 0, strlen($url)-1);
	}
	return $matches[1] . "<a href=\"$url\" rel=\"nofollow\">$url</a>" . $ret;
}
 
function _make_web_ftp_clickable_cb($matches) {
	$ret = '';
	$dest = $matches[2];
	$dest = 'http://' . $dest;
 
	if ( empty($dest) )
		return $matches[0];
	// removed trailing [,;:] from URL
	if ( in_array(substr($dest, -1), array('.', ',', ';', ':')) === true ) {
		$ret = substr($dest, -1);
		$dest = substr($dest, 0, strlen($dest)-1);
	}
	return $matches[1] . "<a href=\"$dest\" rel=\"nofollow\">$dest</a>" . $ret;
}
 
function _make_email_clickable_cb($matches) {
	$email = $matches[2] . '@' . $matches[3];
	return $matches[1] . "<a href=\"mailto:$email\">$email</a>";
}
 
function make_clickable($ret) {
	$ret = ' ' . $ret;
	// in testing, using arrays here was found to be faster
	$ret = preg_replace_callback('#([\s>])([\w]+?://[\w\\x80-\\xff\#$%&~/.\-;:=,?@\[\]+]*)#is', '_make_url_clickable_cb', $ret);
	$ret = preg_replace_callback('#([\s>])((www|ftp)\.[\w\\x80-\\xff\#$%&~/.\-;:=,?@\[\]+]*)#is', '_make_web_ftp_clickable_cb', $ret);
	$ret = preg_replace_callback('#([\s>])([.0-9a-z_+-]+)@(([0-9a-z-]+\.)+[0-9a-z]{2,})#i', '_make_email_clickable_cb', $ret);
 
	// this one is not in an array because we need it to run last, for cleanup of accidental links within links
	$ret = preg_replace("#(<a( [^>]+?>|>))<a [^>]+?>([^>]+?)</a></a>#i", "$1$3</a>", $ret);
	$ret = trim($ret);
	return $ret;
}

 

Hosting WordPress di WordPress atau Hosting Sendiri

WordPress.com menyediakan semua terkait blogging. Anda yang ingin punya nama sendiri bisa beli dari wordpress. Gak mau repot mengurus hosting sendiri dan wordpress-nya, inginnya cuma pengen nulis aja, tinggal pakai hosting wordpress. Yang pengen nambah Google Analytics juga bisa lewat plugin yang dijual oleh wordpress. Semua ada !.. Ada juga harga yang harus dibayar.

Tapi kekurangan kalau kita hosting di wordpress, ada batasan-batasan dari wordpress yang membuat kita harus membayar lebih, misalnya nambah Google Analytics plugin diatas.

Yang bisa full bisa ngapa-ngapain terhadap website kita sendiri ya pakai hosting sendiri. Kelemahannya kita harus urus sendiri settingan hostingnya, keamanan website wordpressnya, update plugin atau core-nya, dan harus aware dan hati-hati terhadap celah keamanan plugin yang diinstall.

Menampilkan Posting Dengan Hanya Tags Tertentu di Halaman Depan WordPress

image source http://hillmediagroup.com , 2015
image source http://hillmediagroup.com , 2015

Kenapa kita perlu mem-filter hanya postingan dengan tags tertentu? jawabannya adalah 1. Ingin mengangkat postingan lama yang sudah terpendam jauh di bawah dan postingan baru yang dihalaman depan sudah terlalu lama muncul, 2. Ingin memfokuskan pengunjung ke topik (tags) tertentu ketika membuka halaman pertama, 3. Suka-suka aja pengen ngotak-ngatik blog.

Kalau pada postingan sebelumnya membahas Menampilkan Hanya Kategori Tertentu di Halaman Depan WordPressdisini kita filter postingan yang ada di halaman depan berdasarkan Tags.

Pada intinya sama dengan filtering berdasarkan kategori, hanya saja pada bagian code kategorinya diganti dengan code tags.

Gunakan code berikut:

<?php
query_posts('tag=radio' . '&showposts=10'.'&paged='.$paged);
?>

Hanya saja kalau pada filtering berdasarkan kategori, kita gunakan nomor kategori. Sedangkan disini kita gunakan kata tags-nya sendiri. Dalam contoh kode diatas yaitu radio .

 

Menampilkan Hanya Kategori Tertentu di Halaman Depan WordPress

image source http://hillmediagroup.com , 2015
image source http://hillmediagroup.com , 2015

Ada suatu kasus dimana kita ingin menampilkan satu atau beberapa jenis kategori saja yang ingin ditampilkan di halaman depan blog. Pengunjung yang membuka alamat utama blog kita, yang muncul adalah postingan-postingan di kategori yang telah kita pilih tersebut.

Sebagai solusi untuk kasus diatas, kita bisa memasukkan satu baris kode di theme wordpress kita. Cara ini syaratnya kita menggunakan wordpress di hosting sendiri, bukan hosting free yang disediakan wordpress.

Masuk ke dalam theme editor di mode admin dan sisipkan kode <?php query_posts(‘cat=3,57’ . ‘&showposts=10′.’&paged=’.$paged); ?>  dan masukkan ke dalam file index.php tepat di bawah baris <div id=”main-content” class=”main-content”> .

Ganti bagian ‘cat=3,57’ dengan nomor kategori yang diinginkan. Setelah selesai dan diupdate file index.php -nya, kita bisa refresh dan posting yang muncul hanya kategori yang telah kita pilih.

Referensi:

Display Only Certain Categories or Single Post on Home Page in WordPress

Pasang Post Views Counter Pada WordPress

image source http://hillmediagroup.com , 2015
image source http://hillmediagroup.com , 2015

Tadinya mau nyari plugin widget buat menampilkan jumlah hits atau statistik di blog ini, tapi malah nemu jumlah views pada suatu postingan. Saya pikir menarik kalau bisa mencatat jumlah views pada postingan.

Saya coba pasang dengan cara installasi biasa lewat fasilitas add plugin  bawaan wordpress tinggal ikuti petunjuk, tunggu sebentar, terinstall deh. Setelah itu aktifkan jika belum aktif.

Pengaturan selanjutnya yang paling penting yaitu menyisipkan kode plugin ini <?php echo ‘This post has been viewed’; ?> <?php echo_views(get_the_ID()); ?> <?php echo ‘times’; ?>  kedalam themes editor yang tersedia di menu Appearance . Sisipkan pada file PHP content di posisi yang disukai.

Setelah berhasil dipasang di tempat “yang benar”, jumlah view post akan muncul di halaman artikel. Cuma dari percobaan barusan saya beri catatan berupa:

  1. Setelah dipasang, jumlah view semua post 0 (nol).
  2. Jumlah view kedua agak aneh, jumlahnya lebih dari 2 views.
  3. Setiap kita refresh, jumlah view akan nambah.