Tutorial PHP Lanjutan Part 32 : Cara Generate URL SLUG Menggunakan PHP
Tutorial PHP Lanjutan Part 32 : Cara Generate URL SLUG Menggunakan PHP
- Hello everyone selamat
datang kembali diwebsite saya belajarwithib.my.id, pada seri kali ini kita akan
masih mempelajari Cara Generate URL SLUG Menggunakan PHP.
Kenapa sih
kita harus belajar mengenai ini? Jawabannya simple karena ini termasuk ilmu :D
eits tapi tunggu dulu…keuntungan menggunakan URL SLUG untuk mempercantik url
kamu dan bagus untuk SEO dari website kamu loh.
Penasaran?
Skuy lanjut dibaca!
Cara Generate URL SLUG Menggunakan PHP
Kenapa Kita Harus Menggunakan URL SLUG?
Okey kita
tahu bahwa URL SLUG ini sangat bagus sekali dalam SEO. Adanya URL SLUG untuk
menganti ID untuk memanggil data atau sebagai panganti URL Key. Sebagai contoh
perhatikan yang dibawah ini :
Dibawah
adalah contoh penggunaan ID
https://www.belajarwithib.my.id/id_postingan=12
Sedangkan
dibawah ini cara penggunaan URL SLUG
https://www.belajarwithib.my.id/search-data-multiple-tag-php-ajax
Nah lebih
bagus dan rapi ketika kita menggunakan URL SLUG dan ditambah lagi Search Engine
dapat dengan cepat mengindeks artikel postinganmu.
Cara Mengubah Teks Ke SLUG
Sebelumnya
pastikan kamu sudah belajar mengenai cara memanipulasi string pada PHP karena
pada tutorial ini kita hanya menggunakan Function untuk memanipulasi string
saja.
Perhatikan
lah code dibawah ini :
<?php
function TextKeSlug($text){
$text = preg_replace('~[^\pL\d]+~u', '-', $text);
$text = iconv('utf-8', 'us-ascii//TRANSLIT', $text);
$text = preg_replace('~[^-\w]+~', '', $text);
$text = trim($text, '-');
$text = preg_replace('~-+~', '-', $text);
$text = strtolower($text);
return $text;
}
echo TextKeSlug("Belajar Pemprograman Kita Sekarang");
?>
Atau kamu
dapat menggunakan function seperti dibawah :
<?php
function TextKeSlug($text) {
$text = trim($text);
if (empty($text)) return '';
$text = preg_replace("/[^a-zA-Z0-9\-\s]+/", "", $text);
$text = strtolower(trim($text));
$text = str_replace(' ', '-', $text);
$text = $text_ori = preg_replace('/\-{2,}/', '-', $text);
return $text;
}
echo TextKeSlug("Belajar Pemprograman Kita Sekarang");
?>
Hasilnya
akan tetap sama saja. Nah jika kamu menjalan function seperti diatas maka
hasilnya akan seperti dibawah ini :
Yang
awalnya textnya terbentuk seperti ini
Belajar Pemprograman Kita Sekarang
Nanti akan
diubah seperti bentuk dibawah ini
belajar-pemprograman-kita-sekarang
Seperti yang saya ketik diatas tadi bahwa kita hanya memerlukan fungsi untuk memanipulasi string saja contohnya preg_replace, trim, strtolower, ucwords dan str_replace .
- str_replace() berfungsi untuk menggantikan substring tertentu didalam suatu string.
- preg_replace() berfungsi untuk menghapus, replace atau mengganti kata tertentu dalam sebuah variabel string.
- trim() berfungsi untuk menghapus spasi atau karakter whitespace dari sebuah string.
- strtolower() berfungsi untuk menjadikan huruf yang diinginkan menjadi huruf kecil dari huruf besar.
- ucwords() berfungsi untuk dapat mengubah karakter pertama dari setiap kata dalam string menjadi huruf besar.
Selebih
dari yang diatas kamu dapat mempelajarinya sendiri atau mencari tahu sendiri
pada dokumentasi PHP.
Cara Mengubah SLUG Ke Teks
Kita akan
mempraktekan hal sebaliknya yaitu mengubah SLUG kebentuk teks biasa. Sebenarnya
hasil kerjanya tetap sama seperti sebelumnya hanya saja kita akan memfilter
atau menghilangkan tanda tanda pada SLUG.
Perhatikan
function dibawah ini
<?php
function SlugKeText($slug) {
$slug = trim($slug);
if (empty($slug)) return '';
$slug = str_replace('-', ' ', $slug);
$slug = ucwords($slug);
return $slug;
}
echo TextKeSlug("belajar-pemprograman-kita-sekarang");
?>
Kita
mengubah kata dibawah ini
belajar-pemprograman-kita-sekarang
Menjadi
seperti ini
Belajar Pemprograman Kita Sekarang
Simple
bukan? Coba kamu praktekan agar jauh lebih memahami.
Kelemehan Menggunakan SLUG
Dibalik
manfaatnya ada juga kelemahan, Kelemahannya adalah bisa saja setiap artikel
akan mengalami tabrakan URL SLUG. Ini dapat terjadi apa bila kamu sudah
mempunyai artikel lebih dari 100 atau banyaklah. Solusinya kalian bisa membuat
costum SLUG sendiri seperti diblogger kamu dapat mengedit sendiri SLUG/LINK
pada postinganmu , selain itu kamu dapat melakukan cek kesamaan SLUG pada
database sebelum memposting artikel bisa itu ngecek secara manual atau mengecek
secara otomatis saran saya sih gunakan ajax agar tidak melakukan refresh pada
halaman dan solusinya lagi kalian dapat menyisipkan code unik atau tanggal
posting pada SLUG.
Semoga Bermanfaat!