2011-08-05 37 views
4

我試圖在HTML小部件中添加頁面鏈接。Orchard CMS在HTML小部件中添加鏈接

我目前正在將果園作爲虛擬目錄運行,因此我無法使用'/'。此外,由於我正在開發一個網站,然後複製到一個實時網站,我不確定該網站是作爲虛擬目錄還是從根目錄運行。

我剛剛意識到,通過HTML小部件輸入的所有鏈接都會有問題,因爲您無法使用'~',它看起來像圖片鏈接已修復,因此部署到其他位置不起作用即。從localhost \ dev到localhost \ live

任何想法?

回答

3

如果你從HTML編輯器進入它,你沒有任何選擇,只能使用一個根深蒂固的路徑(/富)。當然,如果您之後從vdir發佈到沒有vdir的網站,可能會導致問題,但目前情況如此。我們正在尋找解決方案,但與此同時,您最好的選擇是開發一個儘可能接近生產環境的開發站點。

+0

花了更多的時間,我得出了同樣的結論。 – Jeb746966

+0

也許有人在身體部位的顯示後處理可以做到嗎? – Eilistraee

+1

也許在身體部分的驅動程序中的一些後處理可以做到這一點?在模型更新之後進行一些URL前綴檢測以提取應用程序相關URL並使用〜語法存儲它們。然後在顯示過程中反轉。我知道它最終可能會導致健壯性問題,但我還沒有看到。 (但是,我再也沒有想太多)。我可以自己嘗試實施,然後提交。 – Eilistraee

1

如果你需要顯示指向一個靜態資源的鏈接,你可以使用:

@Html.Link(string textlink, string url) 

但Html.Link不支持應用程序的URL的親戚(〜/ [...]的)

如果您只需要href(如img)。它支持〜/ url。

src='@Href(string url)' 

如果你需要顯示的鏈接到一個動作

@Html.ActionLink(...) <-- lots of overloads. 
+0

感謝流程後身體部分文本你的迴應,但我特別指的是使用HTML小部件,它不允許服務器端代碼。 – Jeb746966

+0

嗯,我讀了「小部件」,並不明白你是用html編輯器來講這個特定的小部件。 – Eilistraee