我正在开发一个使用具有共同页眉和页脚的codeigniter的项目。通过使用pjax,我可以动态地更改内容,而不会打乱页眉和页脚。此外,URL相对于控制器而改变。以下是我对url和SEO类比的关注。在公共页眉页脚编码结构上实现Pjax
我的默认主页控制器加载标题,索引页和页脚,如下所示。
public function index(){
$this->load->model('dbmodel');
$data['about'] = $this->dbmodel->about();
$this->load->view('templates/header',$data);
$this->load->view('includes/index',$data);
$this->load->view('templates/footer');
}
假设我点击菜单项,它加载corresonding控制器路径在URL(比如说 - http://domain.com/main/bandDirectory)和单独pjax内容DIV被替换/与内容更新的同时,页眉和页脚保持不变。
public function bandDirectory(){
$this->load->model('dbmodel');
$data['content'] = $this->dbmodel->band();
$this->load->view('includes/bandDirectory',$data);
}
当菜单项从主页导航,因为它最初加载页眉和页脚时,这工作正常。但是如果我们直接点击url(例如http://domain.com/main/bandDirectory)会怎么样。此控制器不包含页眉和页脚,它仅加载将页面分开的内容!如果搜索引擎索引这些网址,这将成为一个严重的问题。如何解决这个问题? P:由于我在头文件中实现了一个播放器,我不想在所有控制器中包含页眉和页脚,因为这会阻止播放器在播放页眉时进行播放。
嘿...它的工作!不知怎的,我错过了Pjax文档中的这个头部分。下面的链接帮助我在php/codeigniter中实现。谢谢:) http://www.goldhawklabs.com/home/post/using-pjax-with-codeigniter – Ram