这是我的带有 SEO 标题的 URL
http://prdemos.com/Web/2015/assetsrecovered/index.php/pages/page?seo=ar-about-us
我想改变它
http://prdemos.com/Web/2015/assetsrecovered/ar-about-us
index.php/pages/page?seo=
这部分应该删除。
最佳答案
首先我设置config.php
$config['index_page'] = "";
和
$config['uri_protocol'] = 'PATH_INFO';
之后在 routes.php
$route['default_controller'] = "welcome"; // Default Controller
$route['pages/([a-zA-Z-0-9.&_]+)'] = "pages/index/$1";
$route['404_override'] = '';
我在我的 header.php
<?php
foreach($menu as $menu_item){
?>
<li>
<a href="<?php echo base_url();?>pages/<?php echo $menu_item['seo'];?>">
<?php echo $menu_item['name'];?>
</a>
</li>
<?php
}
?>
我的 Controller 是pages.php
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Pages extends CI_Controller {
public function index($seo='')
{
$this->load->model('MPages');
$data['seo']=$this->MPages->get_seo_by_page_slug($seo)->result();
// Loading Common Views
$this->load->view('header',$data);
$this->load->view('topbar',$data);
$this->load->view('mypage_view',$data);
}
}
我终于得到了这些 URL
http://mysitelive/pages/ar-about-us
http://mysitelive/pages/ar-services
关于php - 如何为我的 codeigniter 网站编写 .htaccess 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34220413/