2014-11-05 66 views
0

我剛開始學習Lesscss。我正在構建wordpress主題,並將上傳的徽標保存在wp_options表中。 標誌變量的輸出會像http://example.com/wp-content/uploads/2014/11/logo.jpg 我解析少變量背景圖片url不能用LessCSS

$less->setVariables(array(
    'sitelogo' => $options['site_logo'][0], 
    )); 

和style.less我有

.logo { 
background: url(@sitelogo); 
} 

這不是工作,只是輸出background: url(http)

+0

會發生什麼,如果'在你的PHP位你'的var_dump($選項)? 「sitelogo」變量顯然沒有正確分配。 – rnevius 2014-11-05 15:57:07

+0

感謝您的回覆。我從php獲得輸出。如果我直接在header.php中回顯網址,它就可以工作。我也可以生成其他選項,如顏色,寬度等,在其他網址中,除了網址 – devdarsh 2014-11-05 16:09:29

+0

所以'echo $ options ['site_logo'] [0];'回聲圖像源? – rnevius 2014-11-05 16:10:24

回答

2

您應該添加額外的引號:'sitelogo' => "'$options['site_logo'][0]'"

一個例子也可以在這裏找到:http://leafo.net/lessphp/docs/#setting_variables_from_php

$less->setVariables(array(
    "url" => "'http://example.com.com/'" 
)); 

echo $less->compile("body { background: url("@{url}/bg.png"); }"); 
+0

好,趕快好了。非常感謝! – devdarsh 2014-11-06 06:26:35

1

我不認爲你可以在url()中使用類似的變量。嘗試以下操作。

.logo { 
background: url("@{sitelogo}"); 
} 
+0

我也試過,但沒有工作 – devdarsh 2014-11-05 16:42:48