v2.5.2
Giriş yap

Laravel SEO Uyumlu URL

fuatogur
813 defa görüntülendi

Laravel öğrenmeye başladım ve bi konuyu nasıl yapacağımı çözemedim.
Örneğin ben ürünler için bir route oluştururken aşağıdaki komutu kullanabilirim.

Route::get('/urun/{slug}',[ProductController::class,'index']);
PHP

Buradaki yaklaşımda localhost/urun/macbook-pro gibi bir link ortaya çıkıyor. Ancak ben localhost/macbook-pro gibi bir link yapısı yapmak istiyorum.
Bunu düz PHP ile direkt route değişkeni kullanarak yaptığım projemde veritabanında links diye bir tablo oluşturup linkleri içinde kaydediyordum. Tablo yapısı ve PHP tarafındaki kontrolünü aşağıdaki gibi yapıyordum.
url | type | type_id
-- | -- | --
macbook-pro | product | 1
msi-laptop | product | 2

if ($query = $db->from('links')
    ->where('url', route(0))
    ->first()
    ) {
    $type_id = $query['type_id'];
    $route[0] = $query['type'];
}
PHP

Aynı yapıyı laravelde nasıl kurabilirim.

fatihozpolat
1329 gün önce

ürünleri veritabanında tutarken slug değerlerinide tutun daha sonra route yapısını kurarken

Route::get('/', [IndexController::class,'index']);
Route::get('/dashboard', [DashboardController::class,'index']);
Route::get('/{product-slug}'[ProductController::class, 'index']); 
PHP

şeklinde kurun slug olan link diğerlerinin altında kalınca sorunsuz çalışması gerekir.