Вы на полпути, вот как вы сможете сделать его более динамичным, в вашем файле представлений вы должны иметь такую структуру:
views
- header.php
- footer.php
- template.php
- home.page
В header.php
у вас должен быть весь контент верхнего и нижнего колонтитула, который вы хотите отобразить на всех страницах.
Теперь в вашем шаблоне переместите все ваши включения.
template.php
<?php $this->load->view("header.php"); ?>
<?php $this->load->view($main_content); ?>
<?php $this->load->view("footer.php"); ?>
здесь вы заметили переменную $main_content
, это динамическое имя файла, которое мы хотим загрузить в наш контроллер. Итак, давайте предположим, что у вас есть такой контроллер:
public function home()
{
$data['meta_title'] = $this->lang->line('home_meta_title');
$data['meta_description'] = $this->lang->line('home_meta_description');
$data['meta_keywords'] = $this->lang->line('home_meta_keywords');
$data['main_content'] = 'home';
$this->load->view('template',$data);
}
$data['main_content'] = 'home';
загружает ваш файл home.php
, вы также можете загрузить его из подкаталогов, таких как 'directory / home'. Вы также можете передать любую переменную, как я дал вам в примере с динамической мета.