在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);
}
有什么我想念的吗?或者更简单的方法吗?
答案 0 :(得分:3)
如何使用以下部分制作通用模板并使用CSS对其进行样式设置:
页脚
<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>
然后您可以按以下方式分配$ 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。