это самый простой наиболее гибкий метод я нашел до сих пор. создайте файл шаблона в вашей папке представлений, в которой используются обычно используемые элементы, такие как заголовок, навигационная панель, нижний колонтитул и т. д.
шаблон содержит открытые переменные для передачи определенного содержимого, например, позволяет сделать шаблон: views/template_web.php а затем включить некоторые файлы, чтобы создать базовую структуру страницы просмотров/tmpl_web_head.php просмотров/tmpl_web_close.php просмотров/tmpl_web_foot.php
теперь создайте папку под названием «паутина» для конкретного содержания просмотров/веб/
с некоторыми конкретными файлами для Интернета просмотров/веб/tmpl_web_head.php просмотров/веб/navbar.php просмотров/веб/navbar_bottom.php
так вот вид шаблона файла/template_web.php
// generic header
$this->load->view('tmpl_web_head');
// folder with views specific for "web"
$templatefolder = 'web/';
// header and navbar specific to web
$this->load->view($templatefolder.'header_top');
$this->load->view($templatefolder.'navbar');
// content that is passed from the controller
if(isset($content01))
$this->load->view($templatefolder.$content01);
if(isset($content02))
$this->load->view($templatefolder.$content02);
if(isset($content03))
$this->load->view($templatefolder.$content03);
if(isset($content04))
$this->load->view($templatefolder.$content04);
if(isset($content05))
$this->load->view($templatefolder.$content05);
if(isset($content06))
$this->load->view($templatefolder.$content06);
$this->load->view($templatefolder.'navbar_bottom');
$this->load->view('tmpl_web_close');
$this->load->view('tmpl_web_foot');
раз этот шаблон установить его очень легко передать содержание
в контроллере
function doSomethingWonderful(){
// whatever is happening in the controller
$data['results'] = $this->model->doSomething ;
// the views you want shown on the page
$data['content01'] = 'results_view';
$data['content02'] = 'search_form';
$data['content03'] = 'latest_news';
// just one view call, the content is passed automatically
$this->load->view('template_web', $data);
}
есть много велик но это действительно сияет, когда вы делаете разные версии сайта. вы можете просто создать другой шаблон, например, сказать web_beta и поместить эти файлы в папку web_beta.
затем в вашем контроллере все остается неизменным, за исключением того, что вы вызываете бета-шаблон в вызове просмотра.
$this->load->view('template_web_beta', $data);
это позволяет очень быстро обновлять сайт, внесение изменений и т.д.
возможно дубликат [Лучший метод включая взгляды в видом на CodeIgniter] (http://stackoverflow.com/questions/15221371/лучший метод, в том числе, видовые внутри-видовые в-CodeIgniter) –