2014-04-24 13 views
1

我正在爲Orchard CMS的主題工作,該主題在同一頁面上使用2個不同的導航菜單窗口小部件;頁面標題部分的「主菜單」以及頁腳中的另一個菜單。2在Orchard的同一頁面上,具有不同風格/結構的導航小部件?

兩個菜單(將)具有不同的DOM結構和不同的樣式。

我想通過在我的主題的視圖/文件夾中創建一個Menu.cshtml,我可以覆蓋菜單渲染的方式,並將其更改爲適合我需要頭部主菜單的方式。

現在我想添加頁腳菜單,但它使用與完全打斷頁腳的模板相同的Menu.cshtml(這可以簡單地通過亂搞CSS來修復而不是)。

有什麼辦法可以讓2個小部件使用不同的模板?例如,第二個小部件使用Menu-Footer.cshtml而不是Menu.cshtml?

+0

您可以使用內容項目名稱爲頁腳菜單創建備用項目。在菜單內容項目的編輯頁面中指定名稱(即頁腳)。然後創建一個名爲Menu-footer.cshtml的模板,並將該自定義html放置在該模板上。 – mberacochea

+0

謝謝你的回覆,可惜這似乎不起作用。我將導航的標題(沒有名稱屬性,只有標題)設置爲「TestFooter」並創建了Menu-TestFooter.cshtml,但正常的Menu.cshtml仍在使用中。我知道我可以通過給它命名爲「TestFooterWidget」並創建一個Widget-Name-TestFooterWidget.cshtml來覆蓋(替代?)這個小部件,但我不知道如何從Widget替代品中正確調用導航(I對於MVC和Orchard來說很新鮮),只是直接複製普通的Menu.cshtml內容,例如不起作用... – Konadi

+0

您爲該菜單定義一個ContentItem,使用該名稱作爲替代 – mberacochea

回答

0

啓用小部件交替和形狀示蹤。您會看到所有小部件的新備選項,您可以在主題中使用它們以獲得所需的確切結果。完成後不要忘記禁用形狀追蹤。

相關問題