0

我正在建設一個果園網站,主題是由一位對果園一無所知的圖形藝術家構建的。插入它相當簡單,但是他構建它的方式爲我試圖複製的最終用戶提供了各種各樣的選項,最好不用建立自定義模塊。他構建模板的方式是包含四種不同的佈局類型:50/50,33/67,67/33和100%(這是因爲Model.Content的原因)。自定義區域主題

樣品圖形視圖:

50/50 
================================================================================= 
|           |          | 
| <Left bar with HTML content>   | <Right bar with HTML content>  | 
|           |          | 
================================================================================= 

33/67 
================================================================================= 
|      |              | 
| <Small Left w/HTML> | <Large Right w/HTML>         | 
|      |              | 
================================================================================= 

(等..)

基於我可以告訴你,有辦法果園內創造各種內容類型具有「身體」選項(所以我可以有一個HTML編輯器),但我無法弄清楚如何使用兩個HTML編輯器創建其中的一個,這樣我就可以擁有一個具有兩個可影響區域的可路由頁面。裏面Layout.cshtml,我結合一兩欄佈局的例子是這樣的:

@if (Model.SplitLeft != null && Model.SplitRight != null) { 
    @* 50/50 split view *@ 
    <div class="col_12"> 
     <div class="col_6 clearleft padding_top_15"> 
      @Zone(Model.SplitLeft) 
     </div> 
     <div class="col_6 omega"> 
      @Zone(Model.SplitRight) 
     </div> 
    </div> 
} 

我知道小部件必須指定區域的能力,但我想避免這些,因爲他們不作在嘗試構建兩列布局時,最終用戶很直觀,他們需要添加兩個小部件,將它們應用到特定圖層上的特定區域,修改圖層規則等。該站點將有40-50個頁面,可以是上述四種類型中的任何一種,所以通過層/小部件進行管理將非常複雜。此外,它也不允許我保證我的客戶想要的發佈/取消發佈模型。

我當然可以建立一個模塊來做到這一點,如果我需要,但有些事情告訴我果園已經支持這一點,我只是錯過了如何設置它。

對此提出建議?我調查了一下使用Alternates,但我無法弄清楚如何創建一個內容類型,它下面有兩種其他類型(即HTML編輯器的左/右視圖)。可能最大的障礙是我需要兩個HTML編輯器才能顯示在主編輯屏幕上,因此用戶顯然知道構建該頁面的哪個(即SmallLeft/LargeRight,LargeLeft/SmallRight,50/50 Split)是直觀的。

回答

1

要添加額外的HTML編輯器,您需要將TextField添加到您的內容項目。添加完成後,您需要將html設置爲該字段的flavour

+0

工作正常,但我該如何指定模型上的哪些區域?我試過placement.info,但沒有運氣。我創建的內容類型被稱爲「SplitPage」(即內容ID),我的XML用於展示位置文件是: <地點Parts_Fields_Common_Text-萊夫特賽德= 「SplitLeft」/> <地點Parts_Fields_Common_Text-RightSide = 「SplitRight」/> 此匹配請求被部分兌現(元數據消失),但推我的兩個文本到模型上的這些區域的字段不起作用。 – RubyHaus 2013-03-21 15:27:12

+0

實際上,它不是'Parts_Fields_Common_Text-LeftSide',而是'Fields_Common_Text-LeftSide'(不包括'Parts_')。您必須注意,這將匹配本地區域(由@Display(Model.SplitLeft)''顯示的'Content-SplitPage.cshtml'模板中的區域。如果您需要放置在全局區域(在Layout中)。cshtml'模板),你需要在區域名前面加上'/'符號(例如:') – 2013-03-21 17:15:07

+0

完美!這正是我所需要的,減去另一件事。內容現在按預期顯示,但每個文本字段的名稱(即左側:[來自編輯器的HTML內容])顯示在來自CMS編輯器的文本之前。我確信刪除這也是一個placement.info配置條目,但我不確定如何完成它。 – RubyHaus 2013-03-21 18:12:00