0

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);

}

足りないものはありますか?またはこれを行うためのより簡単な方法は?

4

1 に答える 1

3

次のセクションで一般的なテンプレートを作成し、CSSを使用してスタイルを設定するのはどうですか。

  1. ナビゲーション
  2. 左/右列
  3. メインコンテンツ
  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>
    

次に、$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になります。

于 2012-06-05T15:43:45.533 に答える