什么是在CodeIgniter中管理控制器中的div的最佳方法?

时间:2012-06-05 14:51:38

标签: php html codeigniter

在codeigniter中管理我的/ div变得越来越烦人。

似乎有很多次我希望在更具包容性的div下加载多个视图。

我被迫在第一个视图中包含一个开头div,在最后一个视图中包含一个结束div,或者,我还尝试创建一个仅用于打开和关闭div的视图,以便更容易跟踪

function index($page = '1-home')
{
        /*if (!$this->tank_auth->is_logged_in()) {
                redirect('/auth/login/');
        } else { */
        $this->blurb_model->session_load();
        $data['user_id'] = $this->tank_auth->get_user_id();
        $data['username'] = $this->tank_auth->get_username();
        $data['title'] = ucfirst($page); // Capitalize the first letter
        $data['title'] = $this->page_model->make_title($data['title']);
        $data['page'] = $page;
        //top of page
        $this->load->view('templates/head', $data);
        /* div wrapper */ $this->load->view('templates/wrapper-start', $data);
        $this->load->view('templates/nav', $data);
        $this->load->view('templates/logo');
        $this->load->view('leftbar/create', $data);
        $this->load->view('leftbar/category', $data);
        $this->load->view('leftbar/addfilter', $data);
        $this->load->view('page/board', $data);
        /* div wrapper */ $this->load->view('templates/wrapper-end', $data);
        $this->load->view('templates/footer', $data);

}

有什么我想念的吗?或者更简单的方法吗?

1 个答案:

答案 0 :(得分:3)

如何使用以下部分制作通用模板并使用CSS对其进行样式设置:

  1. 导航
  2. 左/ Rightcolumn
  3. 搜索Maincontent
  4. 页脚

    <div id="innerWrapper">
        <div id="header">
            <div id="logo"><!-- logo HTML -></div>
            <div id="navigation"><?php echo $navigation; // or navigation html and logic in here ?></div>
        </div>
        <div id="mainbody">
            <div id="leftmenu"><?php echo $leftmenu; ?></div>
            <div id="maincontent"><?php echo $content; ?></div>
        </div>
        <div id="footer">
            <div id="column1"><!-- HTML -></div>
            <div id="column2"><!-- HTML -></div>
        </div>
    </div>
    

  5. 然后您可以按以下方式分配$ leftmenu和$ content(以及模板中的任何其他变量):

    // this assigns the returned HTML to the $content variable in your maintemplate
    $data['content'] = $this->load->view('somtetemplate, NULL, TRUE);  
    
    $this->load->view('innerpage', $data);  // this is your main template
    

    这有意义吗?这将有助于更好地组织IMO。