2013-07-25 24 views
1

我們有一個更小的文件hi_style.less有PHP標籤加工較少的CSS文件

@import "css/base-ui.less"; 

#hi { 
    margin: 100px; 
} 

包括另一個不太文件css/base-ui.less用線是這樣的:

.ui-go { 
    background: #74A372 url(<?php echo $l_uri; ?>/images/ui-go.png) repeat-x scroll 50% 50%; 
} 

我們需要的PHP的原因(除非有人有一個更好的主意)是因爲只有一個代碼庫,但我們有許多網站連接到單獨的數據庫從單一的代碼庫。

例如

site-a.mysite.comsite-b.mysite.com都使用相同的代碼,但網址顯然不同。

有沒有辦法忽略php標籤以更少或更好的方式使用一個代碼庫來顯式地址。

我們不能使用相對路徑,因爲基路徑可以改變並指向不同的代碼庫。

在此先感謝。

編輯:site-a.mysite.com/testingsite-a.mysite.com/beta因此圖像文件的URL可能是:經過它的處理,因爲代碼庫可以通過URL來訪問它不可能是一個靜態文件

http://site-a.mysite.com/images/ui-go.png

http://site-a.mysite.com/testing/images/ui-go.png

http://site-a.mysite.com/beta/images/ui-go.png取決於正在訪問的代碼庫。

+0

本地緩存此文件(例如'site-a.mysite.com/css/base-ui.less'),而不是每次都使用php代碼中的文件。無論你想要如何處理這個(現在有效的)文件。您可以每幾個小時左右更新一次該緩存文件,或者您認爲適合的方式。這也會增加性能。 – Sumurai8

回答

0

在我看來,包裝url字符串的引號(which is quite valid;這裏我做了單引號')將解決您的問題。所以......

.ui-go { 
    background: #74A372 url('<?php echo $l_uri; ?>/images/ui-go.png') repeat-x scroll 50% 50%; 
} 

這使得較少的實際輸出字符串與PHP代碼(而不是拋出一個錯誤),那麼當你通過PHP解析器運行編譯 CSS(我認爲是什麼你正在做),它仍然應該根據需要填寫echo的值。