所有控制器的 codeigniter 路由

codeigniter route for all controllers

我有一个包含不同控制器商店、文章、基本页面(例如关于、主页、常见问题解答等)的网站

我需要一种方法来像这样在我的网站上显示项目

一般是这样的

www.site.com/category/sub-category/article-title

但我需要这样的

www.site.com/article-title

一般店铺是这样的

www.site.com/shops/shop-name

但我会像这样需要它

www.site.com/shop-name
 OR shop-name.site.com

我当前路线规则的摘录

$route['category/(:any)'] = 'ads/cat/';
$route['category/(:any)/(:any)'] = 'ads/cat//';

$route['shops/(:any)'] = 'shops/';
$route['shops/(:any)/(:any)'] = 'shops//';

$route['(:any)/(:any)'] = 'site//';
$route['(:any)'] = 'site/';

看看URI routing。缺点是您必须手动添加每条路线。

$route['article-title'] = 'category/sub-category/article-title'
$route['article/(:any)'] = 'article/'

您也可以在控制器内使用 _remap() 尝试 remapping

这个 article 解释得非常透彻。