Penuamaan URL Mesra dalam Enjin PHP
Dalam dunia moden, alamat dengan nombor seperti
/page/1 dianggap tidak cantik. Lebih
menarik apabila halaman tidak dinyatakan dengan
nombornya, tetapi dengan nama teks yang sepadan dengan
tajuk halaman, contohnya seperti ini: /page/halaman-pertama-saya.
Alamat sedemikian dipanggil Penuamaan URL Mesra (human-friendly URLs).
Kewujudan Penuamaan URL Mesra lebih mudah untuk pengguna berbanding
nombor id yang tidak bermakna bagi mereka.
Selain itu, enjin carian akan meningkatkan kedudukan tapak web kami
kerana mempunyai Penuamaan URL Mesra.
Bahagian URL yang sepadan dengan nama halaman dipanggil slug (slug). Mari kita tambahkan ruangan untuk slug dalam pangkalan data halaman kami:
| id | slug | title | content |
|---|---|---|---|
| 1 | my-first-page | title1 | <div> content1 </div> |
| 2 | my-second-page | title2 | <div> content2 </div> |
| 3 | my-third-page | title3 | <div> content3 </div> |
Sekarang mari kita ubahsuai enjin kami untuk berfungsi dengan slug dan bukannya id. Untuk melakukan ini, kita betulkan ungkapan nalar:
<?php
preg_match('#/page/([a-z0-9_-]+)#', $url, $match);
$slug = $match[1];
?>
Dan dalam syarat carian halaman, nyatakan slug dan bukannya id:
<?php
$query = "SELECT * FROM pages WHERE slug='$slug'";
?>
Ubahsuai enjin tapak web anda untuk berfungsi dengan Penuamaan URL Mesra. Uji fungsinya.