我試圖在HTML小部件中添加頁面鏈接。Orchard CMS在HTML小部件中添加鏈接
我目前正在將果園作爲虛擬目錄運行,因此我無法使用'/'
。此外,由於我正在開發一個網站,然後複製到一個實時網站,我不確定該網站是作爲虛擬目錄還是從根目錄運行。
我剛剛意識到,通過HTML小部件輸入的所有鏈接都會有問題,因爲您無法使用'~'
,它看起來像圖片鏈接已修復,因此部署到其他位置不起作用即。從localhost \ dev到localhost \ live
任何想法?
我試圖在HTML小部件中添加頁面鏈接。Orchard CMS在HTML小部件中添加鏈接
我目前正在將果園作爲虛擬目錄運行,因此我無法使用'/'
。此外,由於我正在開發一個網站,然後複製到一個實時網站,我不確定該網站是作爲虛擬目錄還是從根目錄運行。
我剛剛意識到,通過HTML小部件輸入的所有鏈接都會有問題,因爲您無法使用'~'
,它看起來像圖片鏈接已修復,因此部署到其他位置不起作用即。從localhost \ dev到localhost \ live
任何想法?
如果你從HTML編輯器進入它,你沒有任何選擇,只能使用一個根深蒂固的路徑(/富)。當然,如果您之後從vdir發佈到沒有vdir的網站,可能會導致問題,但目前情況如此。我們正在尋找解決方案,但與此同時,您最好的選擇是開發一個儘可能接近生產環境的開發站點。
如果你需要顯示指向一個靜態資源的鏈接,你可以使用:
@Html.Link(string textlink, string url)
但Html.Link不支持應用程序的URL的親戚(〜/ [...]的)
如果您只需要href(如img)。它支持〜/ url。
src='@Href(string url)'
如果你需要顯示的鏈接到一個動作
@Html.ActionLink(...) <-- lots of overloads.
感謝流程後身體部分文本你的迴應,但我特別指的是使用HTML小部件,它不允許服務器端代碼。 – Jeb746966
嗯,我讀了「小部件」,並不明白你是用html編輯器來講這個特定的小部件。 – Eilistraee
作爲pointed out by randompete on codeplex,另一種解決方案可能是實現您自己的IHtmlFilter。我寫了一個簡單的實現,你可以在這裏找到:http://orchard.codeplex.com/discussions/279418 它主要通過更換網址,所有出現的開頭〜/與解決URL(使用UrlHelper.Content()方法)
花了更多的時間,我得出了同樣的結論。 – Jeb746966
也許有人在身體部位的顯示後處理可以做到嗎? – Eilistraee
也許在身體部分的驅動程序中的一些後處理可以做到這一點?在模型更新之後進行一些URL前綴檢測以提取應用程序相關URL並使用〜語法存儲它們。然後在顯示過程中反轉。我知道它最終可能會導致健壯性問題,但我還沒有看到。 (但是,我再也沒有想太多)。我可以自己嘗試實施,然後提交。 – Eilistraee