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   2048 Views

Avatar
davee

Community Member, 3 Posts

8 July 2008 at 9:29am

Edited: 08/07/2008 9:29am

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

Forum Moderator, 5513 Posts

8 July 2008 at 9:58am

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

Community Member, 3 Posts

8 July 2008 at 8:23pm

many thanks Will, this was helpful!