I am trying to find the best way to only have to load my view one time and re-use them on different pages.
For the home page for example I have this code:
function index()
    {
     /* Load Includes for all pages */
     $header = $this->load->view('includes/header','',true);
     $scripts = $this->load->view('includes/scripts','',true);
     $navigation = $this->load->view('includes/navigation','',true);
     $footer = $this->load->view('includes/footer','',true);
     /* Load widgets for Home Page*/
     $rotator = $this->load->view('widgets/home_feature','',true);
     $login = $this->load->view('widgets/login','',true);
     $cal = $this->load->view('widgets/calendar_home','',true);
     $gallery = $this->load->view('widgets/photos_scroll','',true);
     $tags = $this->load->view('widgets/tags_view','',true);
     $spotlight = $this->load->view('widgets/spotlight','',true);
     $recent = $this->load->view('widgets/activityfeed','',true);
     $data=array(
        'title'=>'Philly2Night.com',
        'MetaDesc'=>'Cities2Night new social network',
        'MetaKeywords'=>'Social, Party, Plan, Events',
        //Load Includes
        'header'=>$header,
        'scripts'=>$scripts,
        'navigation'=>$navigation,
        'footer'=>$footer,
        //Load Widgets
        'feature'=>$rotator,
        'login'=>$login,
        'calendar'=>$cal,
        'photos'=>$gallery,
        'tags'=>$tags,
        'spotlight'=>$spotlight,
        'recent'=>$recent
        );
     $this->load->vars($data);    
     $this->load->view('pages/home_view');
    }
How do I create new pages, but referencing these views? I tried making the var global, ideally I want to use switch, and define cases but that alas did not work either.