2017-07-17 53 views
0

我已經創建了一個主題,並使用Orchard中的視圖覆蓋格式化了我的博客。但是,當我嘗試預覽博客帖子時,預覽不會考慮這些覆蓋項。我認爲這是由於預覽網址與我基於URL創建的佈局覆蓋不匹配的緣故。Orchard CMS內容預覽無法正常使用覆蓋

實際URL:http://localhost:30321/blog/post-title
預覽網址:http://localhost:30321/Contents/Item/Preview/9460

有任何解決方法這樣做呢?

+1

我認爲幾乎沒有使用情況下,你想要基於url的覆蓋,但它正在做你所期望的:只匹配它使用覆蓋的url – devqon

+0

我基於url覆蓋,因爲我想我的博客與常規頁面有不同的佈局。這不是一個正常的使用情況?我還能怎樣做到這一點? – matthewjamesr

+1

您可以在您的博客內容類型上使用覆蓋,例如 – devqon

回答

1

你要交替使用,你可以閱讀更多關於here

提到的一樣你不應該使用URL做視圖覆蓋(代理人)的意見之一,除非你有這方面一個很好的用例。你最好使用內容類型替代。所以如果你有一個名爲BlogPost的內容類型,你可以命名你的視圖文件Content-BlogPost.cshtml。您應該將這些文件添加到您的主題項目中。

+0

如果你想在不同的頁面上運行不同的JavaScript,你會怎麼做?您是否將呼叫置於內容覆蓋? – matthewjamesr

+0

我無法想象你想要做什麼,你能詳細解釋一下嗎?這聽起來像你在談論某種類型的javascript模塊化。有多種方法可以做到這一點。我發現最簡單的方法是爲每個頁面/模塊/功能製作獨特的文件,並確保它被封裝在一個匿名函數中。然後創建一個全局初始化函數,並從視圖文件中調用它。這可以確保只有某些JavaScript在某個頁面上執行,但如果您想要進行優化,則可以將所有內容捆綁到一個文件中。 – aalcutt