2013-02-10 108 views
1

它可能是一個多餘的問題。codeigniter模板標題

我嘗試使用codeigniter。我希望我自己的模板帶有在每個頁面上使用的標題。 標題是像登錄一樣填充小部件。

我在互聯網上行走,找到了更好的方式來做到這一點。 不在每個控制器構造函數上調用我的頭文件。

+0

請參閱[我以前的答案](http://stackoverflow.com/questions/9540576/header-and-footer-in-codeigniter/9540985#9540985)。 – 2013-02-11 00:04:32

回答

0

看這個nettuts視頻:「Creating Your First Template With CodeIgniter」。本視頻向您展示瞭如何去做你正在問的問題。

更新: 您可以從控制器添加所需的任何數據。設置類似於:

$data['header_info'] = 'your data'; 
$data['load_view'] = 'the_view'; 

只是將$ data傳遞給模板並將$ header_info傳遞給標題。這裏是新的模板會是什麼樣子:

$this->load->view('my_header.php', $header_info); 
$this->load->view($load_view); 
$this->load->view('my_footer.php'); 
+0

我只是在想,如果頁眉/頁腳視圖需要來自控制器/模型的數據。我該怎麼辦?使用模板文件作爲獲取模型的控制器? – forX 2013-02-10 16:41:52

+0

更新了答案,以反映您的問題的這一部分。 – jco 2013-02-10 20:04:38

0

只需先創建視圖文件夾下的文件夾結構,這樣 enter image description here

在layout.php中文件中設置頁眉,頁腳文件

<?php $this->load->view('includes/header'); 
    //print_r($this->load->view());?> 

<?php $this->load->view($main_content); ?> 

<?php $this->load->view('includes/footer'); ?> 

現在包括文件夾設置頁眉和頁腳文件 你必須過時只有新的內容陣列這樣

$data['main_content']='home/welcome'; // welcome is in your new view view/home/welcome.php 
$this->load->view('layout',$data);//in the controller you load which layout you want 

現在你沒有任何控制器enter image description here

現在需要從控制器調用頁眉和頁腳。你已經在layout.php中設置了它們,並且只將新內容傳遞給它。您可以對管理員面板執行同樣的操作,在這種情況下,可以爲管理員界面創建佈局。然後,可以單獨爲管理員界面設置頁眉和頁腳。