Я, для себя, использую что-то вроде этого:
define(SITE_ROOT, '/'); //client side root of website
define(SITE_PATH, '/var/www/mywebsite/htdocs/'); //serverside root of website
function url($relative, $startingFrom = false, $echo = true) {
$r = '';
if($startingFrom === false) {
$r = SITE_ROOT . $relative;
} else {
$forward = str_replace('\\', '/', $startingFrom);
$path = substr($forward, 0, strrpos($forward, '/'));
$r = SITE_ROOT . substr($path, strlen(SITE_PATH)) . '/' . $relative;
}
if($echo) {
echo $r;
} else {
return $r;
}
}
, короче говоря, это создает «абсолютный» путь для вас, так что вы также можете изменить название своей «темы» безнеобходимо изменить все абсолютные ссылки, которые он содержит.
таким образом, в header.php
вы можете написать:
<link rel="stylesheet" href="<?php url('css/layout.css', __FILE__);?>" type="text/css" media="screen" />
функция имеет несколько необязательных атрибутов, они должны быть самоочевидными.