私は初心者です。最終的に、フッターとヘッダー部分を除いて MY_Controller.php を使用して、サイトにページを表示させることができました。
ここに私の MY_Controller.php があります:
class MY_Controller extends CI_Controller {
protected $data = array();
function __construct() {
parent::__construct();
}
function render_page($view) {
//do this to don't repeat in all controllers...
$this->load->view('templates/header', $this->data);
//menu_data must contain the structure of the menu...
//you can populate it from database or helper
$this->load->view($view, $this->data);
$this->load->view('templates/footer', $this->data);
}
そして私のホームコントローラー:
class Home extends MY_Controller {
function __construct() {
parent::__construct();
}
public function view($page = 'home')
{
$this->load->helper('text');
$data['records']= $this->services_model->getAll();
if ( ! file_exists('application/views/pages/'.$page.'.php'))
{
// Whoops, we don't have a page for that!
show_404();
}
$data['title'] = ucfirst($page); // Capitalize the first letter
$this->load->view('pages/'.$page, $data);
}
config/config.rb:
$config['index_page'] = 'index.php';
$config['subclass_prefix'] = 'MY_';
config/routes.rb:
$route['default_controller'] = 'home/view';
$route['(:any)'] = 'home/view/$1';
ソース コードでは、home.php コードしか確認できません。header および footer.php コードはロードされません。あなたの提案は何ですか?