Seperti yang kita ketahui, sejak versi 2021, PHPMaker mulai memperkenalkan URL yang ramah terhadap optimisasi mesin pencarian, atau lebih dikenal dengan singkatan SEO (Search Engine Optimization) Friendly. Ini salah satu fitur andalan PHPMaker 2021 yang powerful sekaligus fleksibel.
Powerful karena URL Aplikasi Web yang dihasilkan oleh PHPMaker 2021 sekarang bisa menyamai URL Aplikasi Web yang dihasilkan dengan PHP Framework seperti Laravel, Symphony, Yii, CodeIgniter, dan sebagainya. Fleksibel, karena URL tersebut bisa diakses dengan alamat alternatif yang lebih SEO Friendly dan lebih mudah dibaca lagi.
Perhatikanlah URL dari beberapa halaman berikut milik table models pada demo project PHPMaker 2021 (URL default):
– Halaman List: modelslist
– Halaman Add: modelsadd
– Halaman Copy: modelsadd/1 (misalnya untuk menyalin data Model dengan ID = 1)
– Halaman Edit: modelsedit/1 (misalnya untuk mengubah data Model dengan ID = 1)
– Halaman View: modelsview/1 (misalnya untuk menampilkan data Model dengan ID = 1)
– Halaman Search: modelssearch
Semuanya tanpa akhiran ekstensi .php. Aplikasi Web yang dihasilkan oleh PHPMaker 2021 kelihatan menjadi semakin lebih profesional dibandingkan dengan yang dihasilkan oleh PHPMaker versi-versi sebelumnya. Ini jugalah salah satu alasan, mengapa sebaiknya kita disarankan untuk selalu menggunakan versi yang terakhir.
Tapi, tahukah Anda bahwa sebenarnya PHPMaker 2021 diam-diam sudah menyediakan URL alternatif seperti yang baru saja kita bahas tadi? Alternatif URL yang saya maksud adalah URL yang lebih mudah dibaca dan terlihat lebih terstruktur?
Artinya, keenam halaman di atas tadi, bisa juga diakses dengan URL alternatif sebagai berikut:
– Halaman List: models/list
– Halaman Add: models/add
– Halaman Copy: models/add/1 (misalnya untuk menyalin data Model dengan ID = 1)
– Halaman Edit: models/edit/1 (misalnya untuk mengubah data Model dengan ID = 1)
– Halaman View: models/view/1 (misalnya untuk menampilkan data Model dengan ID = 1)
– Halaman Search: models/search
See? Sudah tahu bedanya dimana? Yes! URL alternatif ini lebih mudah dibaca, karena memisahkan antara nama table dan jenis halamannya. Kalau disuruh memilih, tentu kita akan memilih URL alternatif tersebut.
Betapa canggih sekaligus fleksibel, bukan? PHPMaker 2021 ternyata sudah menangani hal ini. Satu lagi rahasia fitur URL yang SEO-Friendly mulai terkuak. Semakin membuktikan bahwa Aplikasi Web yang dihasilkan oleh PHPMaker 2021 menjadi lebih profesional lagi, karena lebih mudah dibaca dari URL-nya.
Tidak berhenti di situ saja. Masih ada kejutan lain menanti, hehehe… 😉
Sekalipun link yang digunakan oleh Aplikasi Web adalah URL default yang di atas atau yang kita bahas pertama tadi, kita masih bisa mengganti URL tersebut pada menu atau tombol yang akan membuka ke halaman yang bertalian.
Contoh, kita ingin mengganti URL default modelslist yang terdapat di item menu pada Sidebar, menjadi models/list, maka cukup tambahkan sedikit kode PHP ke dalam server event MenuItem_Adding sebelum atau di atas baris return true.
Sedangkan untuk mengganti link yang terdapat di setiap baris (row) pada table di halaman List, kita cukup menambahkan sedikit kode PHP ke dalam server event Row_Rendered.
Jika ingin mengganti link atau URL milik tombol Add, Delete (multiple delete records), dan Advanced Search di halaman List, maka cukup menambahkan sedikit kode PHP ke dalam server event Page_Render milik halaman List.
Sedangkan jika ingin mengubah URL atau link milik beberapa tombol di halaman View, kita cukup menambahkan sedikit kode PHP ke dalam server event Page_Render milik halaman View.
Selanjutnya kita perlu menyesuaikan link breadcrumb yang terdapat di halaman Add, dengan menambahkan sedikit kode PHP ke server event Page_Render milik halaman Add.
Selanjutnya kita perlu menyesuaikan link breadcrumb yang terdapat di halaman Edit, dengan menambahkan sedikit kode PHP ke server event Page_Render milik halaman Edit.
Selanjutnya kita perlu menyesuaikan link breadcrumb yang terdapat di halaman Delete, dengan menambahkan kode PHP ke server event Page_Render milik halaman Delete.
Selanjutnya kita perlu menyesuaikan link breadcrumb yang terdapat di halaman Search, dengan menambahkan sedikit kode PHP ke server event Page_Render milik halaman Search.
Pastikan untuk men-generate ulang semua file script seperti biasa menggunakan PHPMaker 2021. Setelah itu, cobalah akses kembali Aplikasi Web via browser, lalu buka halaman List table models, maka URL akan berubah menjadi lebih SEO Friendly lagi, termasuk link milik beberapa tombol yang ada di sana.
Demikian pula saat membuka halaman View, Anda akan melihat link milik beberapa tombol yang ada di sana menjadi semakin lebih SEO Friendly lagi. Wow, keren kan? 😀
Betapa mudah dan cepatnya. Sudah powerful, eh fleksibel juga. 😉
Pasti penasaran ingin melihat demonya kan? Cukup klik di sini!
Untuk mengetahui seperti apa kode selengkapnya di project PHPMaker 2023, silahkan beli project PHPMaker-nya di sini.
Maaf , apakah di PHP Maker 2021 ini memungkinkan utk membuat URL SEO selain dari nama Tabelnya.
Misal , nama Tabel : models
Default PHP Maker : app/modelslist atau app/models/list
Apakah bisa dibuat misalkan :
app/data-model atau
app/data-model/list atau
app/data-modellist
Tentu bisa.
Waah, keren berarti yaa.
Sayangnya dari Project -> Menu belum ada Settingan untuk ini (URL msh disable)
saya pernah coba-coba manual dari Script, Halaman List bisa, tapi error ketika di halaman Pencarian.
Itupun msh manual, belum ada gambaran yg lebih efektif/ dari Server Event.
Kalau yang dari Menu Editor memang sengaja di-disabled, karena secara standar itu akan di-generate dari nama table atau nama file (jika Custom Files).
Yang dimaksud cara manual dari script seperti apa ya? Bisa dijelaskan?
Saya coba masih di Versi sebelumnya bang, kan masih ada ewmenu.php, saya ganti URL nya dari situ + di htaccess nya.
Tapi ketika di halaman Pencarian/ hasil cari kembali lagi ke app/models.php
Itupun kalo menu nya sudah banyak gak Recomended, karena setelah Generate Ulang, harus ubah2 lagi.
Versi sebelumnya itu apakah maksudnya PHPMaker versi 2020? Kalau iya, di versi itu memang belum mendukung URL yang SEO Friendly.
Baik di versi 2020 dan 2021, jika ingin mengganti URL di suatu menu item, bisa menggunakan server event MenuItem_Adding , kan sudah dijelaskan di artikel atas? Hehe, lupa ya?
waktu itu masih pake 2019 bang, hehee
Ini saya coba yang 2021 pake cara diatas, saya ubah dari Row_Rendered
Modelslist jadi : data-models
atau
ModelsAdd jadi : tambah-models
Ternyata malah error, apa harus ditambahkan di htaccess nya satu satu ya bang ?
Atau ada cara yang lebih praktis.
Hehe
Sayangnya di versi 2021 ini belum bisa melalui server events. Kita harus menambahkan kodenya ke dalam file src/routes.php yang sudah di-generate oleh PHPMaker.
Solusi selengkapnya langsung saja ke artikel ini: Membuat URL yang SEO-Friendly Tanpa Menggunakan Nama Table di PHPMaker 2021.
Saya ralat komentar saya di atas ya. Sekarang kita sudah bisa menggunakan server event Route_Action untuk mendefinisikan routes yang namanya bisa kita tentukan sendiri. Jadi, tidak harus menambahkannya ke dalam file src/routes.php. Semoga dapat membantu.
Waah mantap banget anda bang, luaaar biasa bener.
Terimakasih banyak, saya coba dulu.
Berarti itu tetap harus didefinisikan di MenuItem_Adding dulu ya .
Yang seperti ini , diubah ? :
Ooh iya bang, ini saya coba yang artikel diatas, semua berjalan sesuai.
Tapi maaf yg paling atas sendiri Bagian Menu Sidebar , Kalo script nya
If (… ==”modelslist”) //huruf depan kecil semua.
Hasilnya ga ada perubahan (link menu nya tetap)
Tapi kalo diganti huruf besar depannya :
If (…. ==”ModelsList”) //huruf depan besar
Hasilnya ada perubahan (di Link Menu nya)
Apa memang begitu ya bang.
Iya betul, kalau setting Lowercase routes tidak diaktifkan dari tab Generate, maka itu artinya routes-nya menggunakan ModelsList.
Tapi kalau setting Lowercase routes tadi diaktifkan, maka URL menjadi modelslist.