I've solved this by creating my own template.
E.g., in the folder views/template I have a file named "template.php". Contents of this file:
PHP Code:
$this->load->view('template/header');
$this->load->view($main_content);
$this->load->view('template/footer');
In my controller, I load the 'news' page like this:
PHP Code:
$data['main_content'] = 'news';
$data['records'] = ...; // (sql-statement to load the news records)
$this->load->view('template/template',$data);
Important! The variables that are passed to the template through the $data array, are available in all views that are loaded into the template.