我正在开发一个包含许多页面的网站,其内容将从数据库中获取。整个网站都是在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 手册中的示例。