2012-02-14 18 views
0

私はCodeigniterにTemplate libraryを使用しています。Codeigniter複数のテンプレートを読み込む

高度な使用#3を使用して複数のテンプレートをロードする方法を理解できません。私は第二のテンプレートの読み込みが下に彼のload_main()関数から欠落しているように感じる。

function load_main($view = '', $view_data = array(), $return = FALSE) 
{ 
$this->set('nav_list', array('Home', 'Photos', 'About', 'Contact')); 
$this->load('template', $view, $view_data, $return); 
    //shouldn't this be there?=> $this->load('template2', $view, $view_data, $return); 
} 

私は修正かな?もしそうなら、あなたはコントローラとビューファイルの見方についていくつかのヒントを与えることができますか?ここで

は、著者がコントローラの持っているものです。

$this->template->set('nav', 'About'); 
$this->template->set('title', 'About me'); 
$this->template->load_main('about'); 

とテンプレートビュー:

<html> 
<body> 
    <div id="contents"><?= $contents ?></div> 
    <div id="footer">Copyright 2008</div> 
<ul class="navigation"> 
<?php foreach($nav_list as $i => $nav_item): ?> 
    <li class="<?= ($nav == $nav_item ? 'selected' : '')?>"> 
     <?= anchor($nav_item, $nav_item) ?> 
    </li> 
<?php endforeach ?> 
</ul> 
</body> 
</html> 

答えて

2

私はそれが何かを欠けているとは思わないが、それは、それは仕事をしてどのように少し不明です...

function load_main($view = '', $view_data = array(), $return = FALSE) 
{ 
    $this->set('nav_list', array('Home', 'Photos', 'About', 'Contact')); 
    $this->load('template', $view, $view_data, $return); 
} 

この方法では、「テンプレート」テンプレートを使用してナビの設定を行います。 $this->template->load_main('test');は "template"テンプレートを使ってviews/test.phpを読み込みます。

ので(当然、およびテンプレート)、別のテンプレートを使用するテンプレートファイルに新しいロード・メソッドを作成するために

function load_radical_template($view = '', $view_data = array(), $return = FALSE) 
{ 
    $this->load('radical_template', $view, $view_data, $return); 
} 

$this->template->load_radical_template('test');「radical_template」テンプレートを使用してビュー/ test.phpををロードします。

+0

ありがとうStormdrain、それを行う方法の1つのように見えますが、私はJeromeのドキュメンテーションがそれを暗示していないので別の方法を追加する必要はないと思っていましたが、時にはあなたがしなければならないことがあると思います。 。thanks、-tim –

+1

ああ、そうですが、「複数のテンプレートを簡単に処理するには、ライブラリ/ Template.phpに新しいロードメソッドを定義してください」。セクション3の最初の文から引用。_高度な使用3:リンクしたページの複数のテンプレート_。 – stormdrain

+0

ええ、ええ、私はあなたが正しいと思う、もう一度ありがとう! –

関連する問題