Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

Archive

Our old forums are still available as a read-only archive.

Moderators: martimiz, Sean, biapar, Willr, Ingo, simon_w

how to use relative paths for theme files


Reply

3 Posts   1990 Views

Avatar
davee

8 July 2008 at 9:29am (Last edited: 8 July 2008 9:29am), Community Member, 3 Posts

hey guys,

this is very basic on linking to /theme files in templates.

given i am using my own theme and including css:
<link rel="stylesheet" href="themes/exampletheme/css/screen.css" type="text/css" media="screen" />

the thing is though, the engine generates links with slashes at the end by default, i.e.:
www.example.com/contact/

and this obviously wouldn't work as the ultimate http request to css is assembled as following:
www.example.com/contact/themes/exampletheme/css/screen.css
while i need the query to point to www.example.com/themes/exampletheme/css/screen.css

in other words this kind of relative path above ("themes/exampletheme/....") doesn't work unless i remove the end slash from the URL.

there seems to be a workaround by using $BaseHref for all media files but i am sure there is another clean way. just by looking at the code used at silverstripe.com ;)

i also don't want to hardcode anything as paths on devel server are different.

how do you guys deal with this? have i missed something in the confuguration .htaccess?

cheers,
davee

Avatar
Willr

8 July 2008 at 9:58am Forum Moderator, 5511 Posts

Have you got the <% base_tag %> in your theme? This sets the <base> tag in your template to yoursite.com/ so every relative link on the page is taken from this.

Avatar
davee

8 July 2008 at 8:23pm Community Member, 3 Posts

many thanks Will, this was helpful!