删除Codeigniter CMS URL中的控制器名称和函数名称


Removing controller name and function namein URL in Codeigniter CMS

我正在codeigniter中构建一个cms,我想删除控制器名称和函数名称形式的url,只是打印别名。我将有两个控制器一个用于静态页面和其他与类别的博客文章。请帮忙,也欢迎对两个控制器的修改提出建议

您需要覆盖application/config/routes.php中默认的404控制器。

$route['404_override'] = 'content';

任何不能映射到控制器的请求将被传递到application/controllers/content.php控制器

你的Content控制器,或者你决定叫它什么,将解析uri [$this->uri->segment(1)],并检查在你的CMS数据库中的匹配引用。

如果数据库中没有匹配,则可以在views文件夹中查找静态视图并加载它。

if(is_file(FCPATH.'views/'.$this->uri->segment(1).'.php')) {
    $this->load->view($controller,$this->data);
}

如果没有找到静态视图,并且数据库中没有匹配的内容,则调用show_404()函数

使用这个方法,你将保留uri映射的默认CI功能,所以在任何时候,你都可以像往常一样添加控制器,应用程序将像一个普通的CI安装一样运行。