2012-07-07 57 views
0

我有一個網站,需要有頁面的變化。Yii的網頁版本的

例如:

website.com/variation1/page1 
website.com/variation2/page1 
website.com/variation3/page1 

所有這些都具有相同的DB,並具有相同的功能。唯一的區別是這些變化在頁面模板中有所不同。頁眉,頁腳,內容等。這是爲了分析頁面訪問的目的。

就這樣,什麼是做到這一點的最好方法是什麼?在Yii中,有一個常用的佈局,所以頁眉/頁腳取決於佈局。在這種情況下,頁眉/頁腳應特定於每個頁面,以便用戶可以修改特定頁面的頁眉/頁腳/內容而不影響其他頁面。

那麼,又是什麼造成這種情況的最好的方法?

預先感謝您。

編輯:

我想我知道我在這裏尋找: 有沒有辦法覆蓋/從佈局添加標題視圖中的文件?

+0

控制器有一個'layout'屬性,它在'/ protected/views/layouts'中尋找一個文件。你可以在一個動作中修改它。 – adamors 2012-07-07 06:52:04

+0

@ ORS向你表示感謝。不過,我已經知道,我所特別尋找的是一種重寫佈局頁眉上的內容的方法。有沒有辦法做到這一點? – JohnnyQ 2012-07-07 06:59:57

回答

0

我剛剛發現了一個可能的解決方案接近頁面的變化。

在我看來,我的目錄創建一個目錄varation包含即

/view/variation/1/page1.php 
/view/variation/2/page1.php 

所以,當我想渲染我會打電話給每個varations與參數控制器包含的頁面。

Ex。 $this->render('variation/1/page1')有點。

而如果您想使用一個特定的頭信息的每一頁,你可以使用

註冊Meta標籤

註冊腳本文件/腳本

註冊CSS文件/ CSS

設我知道是否有更好的方法來做到這一點。

1

創建三種不同的佈局,稱爲variation1.php,variation2.php,variation3.php,然後根據操作(website.com/variation/pageone)或參數(website.com/variation/page/1)更改佈局(在行動中)。

+0

我認爲這是一個好主意。我也會試試這個。然而,問題在於內容改變的時候內容也改變了。不是嗎? – JohnnyQ 2012-07-07 15:53:56