CodeIgniter uygulamasının WordPress'e benzer şekilde çalışmasını sağlamaya çalışıyorum.CodeIgniter için Yönlendirme (: any)
Ben URL'lerin bu tür yapabilmek istiyorum:
http://www.example.com/my-post-example
http://www.example.com/new-headline-here
http://www.example.com/i-love-stackoverflow
Benim yönlendirme:
$route['(:any)'] = "core/index/$1";
benim Çekirdek arayacakdenetleyici ve sayfa adını dizin işlevine iletir.
Veritabanımda sayfa adı için arama yapıp sayfayı kullanıcıya görüntülerim. Çok uzak çok iyi. Bununla birlikte, başka bir denetleyici aramak istediğim zamanlar olacaktır. Örneğin:
http://www.example.com/admin/settings
http://www.example.com/admin/edit_page/3
Şimdi benim rota sadece tüm bu kuralları kapmak ve benim Core kontrol içine gönderir varsayalım. Belirli sayfalar için bir istisna yapmanın bir yolu var mı? Yoksa bu kontrolü Çekirdek denetleyicimde yapmak iyi bir fikirdir. Örneğin,
if ($page not in DB) {
// Call controller/method
}
Sadece CodeIgniter bu işlemek istiyorum çünkü bu biraz gereksiz gibi görünüyor.
Teşekkür kullanarak Tamam olacak Nihayet
http://www.example.com/admin/index
olmalı! Herhangi bir URL modeliyle eşleşmenin bir yolu var mı?/Ile dahil olmak üzere Yani yönetici/edit/lol/çekirdek/dizine de gider miydi? Ya da her zaman (: any)/(: any)/(: any) eklemek zorunda mıyım? – Oliwol
$ rotanızdan başka bir kural daha ekleyin ['(: any)'] = "core/index/$ 1"; 'rule' $ route ['admin/edit/lol'] = "core/index"; –
Ne? Eğer herhangi bir veriyi işleve yönlendirmek istersem: admin/edit/lol => core/index ve ayrıca admin/new/test => core/index. Her bir kuralı eklemek daha iyi bir yol var mı?Gibi rota ['admin/(: any)/(: any)'] - ama sonsuza kadar bir 3., 4. ve 5. yukarı ekleme potansiyeline sahip. – Oliwol