我正在使用CodeIgniter v3.1.3。基于“静态页面”教程,我试图创建一个包含5个页面的静态网站,例如主页,关于,服务,投资组合和联系人。导航菜单在CodeIgniter中无法正常工作
我在'application/controllers'
目录下有一个Pages.php控制器。
我Pages.php控制器看起来像
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Pages extends CI_Controller {
//Controller logic
public function view($page = 'home')
{
if(!file_exists(APPPATH.'views/pages/'.$page.'.php')){
//Whoops!, we don't have a page for that
show_404(); //In-built CI function to show 404 error pages
}
$data['title'] = ucfirst($page); //Capitalize the first letter
$this->load->view('templates/header',$data);
$this->load->view('pages/'.$page,$data);
$this->load->view('templates/footer',$data);
}
}
我也创建内部'application/views/pages'
像home.php,about.php,services.php,portfolio.php,contact.php
标题的常见代码&页脚存在于'application/views/templates'
like footer.php & header.php。 内的header.php我的导航菜单看起来像
<li><a class="curr_menu" href="<?php echo base_url('pages/view/home');?>">Home</a>
</li>
<li><a class="page-scroll" href="<?php echo base_url('pages/view/about');?>">About Us</a>
</li>
<li><a class="page-scroll" href="<?php echo base_url('pages/view/services');?>">Services</a>
</li>
<li><a class="page-scroll" href="<?php echo base_url('pages/view/portfolio');?>">Portfolio</a>
</li>
<li><a class="page-scroll" href="<?php echo base_url('pages/view/contact');?>">Contact Us</a>
</li>
我的routes.php文件(的application/config/routes.php文件)看起来像
$route['default_controller'] = 'pages/view';
$route['(:any)'] = 'pages/view/$1';
的主页显示初始加载,但是当我点击在任何菜单项上,它返回'404页未找到'错误。
有人可以请解释 - 清晰的代码 - 显示,使我的菜单工作。 的.htaccess在根目录中包含
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>
您是否管理'.htacess'文件? –
是的,我有一个htaccess文件。我编辑了我的问题,包括我的htaccess文件 –
'href =“<?php echo base_url('index.php/pages/view/home');?>”'它的工作与否.try一次 –