我正在开发一个包含许多页面的网站,其内容将从数据库中获取。整个网站都是在codeigniter中完成的。
我不想拥有像 www.mywebsite.com/pages/1 之类的网址。相反,我希望管理员在输入页面内容时询问 url 名称 (FURL)。假设管理员输入 FURL 为:study-programs/animation,那么路径应该显示为 www.mywebsity.com/study-programs/animation
有什么建议么?
我正在开发一个包含许多页面的网站,其内容将从数据库中获取。整个网站都是在codeigniter中完成的。
我不想拥有像 www.mywebsite.com/pages/1 之类的网址。相反,我希望管理员在输入页面内容时询问 url 名称 (FURL)。假设管理员输入 FURL 为:study-programs/animation,那么路径应该显示为 www.mywebsity.com/study-programs/animation
有什么建议么?
1) Foreach 页面存储页面名称(可以使用uri_title())
2)在路由(application/config/routes)中添加类似的东西;
$route['page/(:any)'] = "pages/page_lookup";
3)在页面控制器中;
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Pages extends CI_Controller {
    public function __construct() {
        parent::__construct();
    }
    public function page_lookup($page) {
        // do your database query getting page id where page name = $page
        $result = $this->page_model->get_page_by_name($page);
        // $result could hold the page html
        // if so, then just do
        $this->load->view($result);
    }
}
有关更多详细信息,请查看 Codeigniter 手册中的示例。