2012-10-30 100 views
1

我有圖像中顯示的目錄結構。添加相對路徑 - 不正確

如果我在HomePage.ss

<img src="../../images/sprites.jpg" /> 

爲什麼這個相對路徑是不正確的代碼? Failed to load the given url.

enter image description here

+0

你加載鏈接到的圖像'HomePage.ss'直接或者是你,包括它在其他地方? – Jon

+0

@jon好吧,如果我正確理解silverstripe的邏輯,Page.ss將會調用HomePage.ss。從這裏http://doc.silverstripe.org//src/framework_3.0/docs/en/tutorials/_images/tutorial1_subtemplates-diagram.jpg – user947462

回答

1

你需要了解SilverStripe是什麼,它讀取你的模板,並輸出。 所以,如果你有網址mysite.com/home那麼它看起來像該文件所在的文件夾/home中,如果您的網址是mysite.com/page/subpage它會出現,如果該文件夾是/page/subpage

這意味着你可以使用相對路徑比如模板中的「../images/sprites.jpg」(你可以在css中使用它們)。

爲@馬克在評論已經提到,要走的路是用$ThemeDir米將輸出的路徑,主題文件夾,讓你的形象應該是這樣的:<img src="$ThemeDir/images/sprites.jpg" />

0

,如果你不知道路徑從URL將正確的網址加載圖片...

例如:

IMG SRC =「HTTP:// WWW。 「yourwebsite.com/themes/simple/images/img/sprite.jpg」

右鍵單擊並從瀏覽器中查看圖像位置,並複製正確的url。

+0

我想避免這種情況,很明顯。 – user947462

+0

你的網站是什麼? – bob

+0

沒關係..讓我看看我能不能幫你 – bob

1

基於從Silverstripe的文檔,你可以用一個框架網址進入您的圖片:

<img src="$ThemeDir/images/sprites.jpg" alt=""> 
+0

man我不知道爲什麼,但是這會起作用'' – user947462

+0

你是否在框架環境中?然後框架會爲你排序,所以你的主題URL是由你的框架提供的。 – Mark

+0

是的,我正在使用silverstripe的框架。好吧,現在我知道這很有用。 – user947462

-1
img src="../../../images/sprites.jpg" 

img src="../../../images/**img**/sprites.jpg" 
2

Silverstripe使用了標記,以便所有相關的url都是相對於根url而不是當前網頁的url。

的接受的答案是正確的方式,在主題