2016-08-01 71 views
0

我試圖在CodeIgniter 3.1定製網站中混合使用靜態和動態內容。我使用的靜態內容給出的教程示例:在CodeIgniter中混合使用靜態和動態頁面

$route['default_controller'] = 'pages/view'; 
$route['(:any)'] = 'pages/view/$1'; 

恐怕這將是爲目的相當混亂,因爲(:任何)太普通了,我不想用的東西像"/static/(:any)"路線。

關於如何實現一個解決方案,讓我有一個靜態和控制器命名的友好的URL的任何建議?

每個想法都歡迎和非常感謝。


由於我的問題似乎很難理解,我會嘗試再次問它:

有沒有辦法來靜態內容與上面的代碼(從笨教程)結合和通常做法http://example.com/controller/index_named_method動態內容處理?

你能舉個例子嗎?

我是否應該爲每個靜態網頁的名稱更改$route['(:any)']例如: $route['(home|contact|links)']

在此先感謝

+0

您是否閱讀並理解本教程的其餘部分?不要試圖成爲一個聰明的人,但剩下的教程部分討論動態內容。也就是說,我不使用提出的靜態頁面概念。相反,我只是簡單地爲所有頁面使用'http://example.com/ [controller-class]/[controller-method]/[arguments]'。這樣做消除了必須定義一堆路線。 – DFriend

+0

當然,你是完全正確的,這也是我的方法,但是如果你想僅僅使用索引作爲保持http://example.com/[controller-class]/的方法以保持統一,優雅,友好的網站? 你不能,你能嗎? – eisenseinstein

+0

如果我理解你的問題,是的。路由'$ route ['default_controller'] ='home';'將控制器Home.php映射到'http:// example.com'。 Home.php需要一個索引方法。這是你真正需要的唯一途徑。任何其他對'http:// example.com/some_controller'的請求都會調用'some_controller'的索引函數。所以,顯然你需要定義'index()'。 – DFriend

回答

1

那麼,我必須說我自己得到了一個答案;在我以前的帖子編輯說,混合使用index()方法教程示例您的控制器利用靜態和動態內容可以實現將與所有的控制器名稱的路線是這樣的:

$route['(books|flowers|links)'] = '$1';

感謝那些幫助。

相關問題