有沒有人有一個很好的方式來切換管理部分中的樣式只是爲了改變網站的佈局。多風格開關
可以說我有3種風格,我想改變網站的外觀,但想在管理部分做到這一點,但效果需要發生在管理員和用戶端。
我希望管理員有權更改樣式而不是最終用戶,但效果將同時顯示在管理部分和用戶端。
有沒有人有一個很好的方式來切換管理部分中的樣式只是爲了改變網站的佈局。多風格開關
可以說我有3種風格,我想改變網站的外觀,但想在管理部分做到這一點,但效果需要發生在管理員和用戶端。
我希望管理員有權更改樣式而不是最終用戶,但效果將同時顯示在管理部分和用戶端。
你可以讓樣式表包含一個變量,存儲在數據庫中。
最簡單的方法是將所有樣式相關的CSS規則放入一個可以通過PHP交換輸出的CSS文件中。例如,如果在前端和後端的每個PHP頁面上都可以輸出三種「主題」樣式(「loud.css」,「brash.css」和「happy.css」),則可以簡單地輸出基於數據庫設置的內容,HTML將包含其中的一個。
將樣式表值存儲在數據庫中,並在頁眉渲染時使用它。然後你可以寫一個簡單的管理工具來改變它的值。
$avail_styles = array("green","red","blue");
if(isset($_REQUEST['style']) && in_array($_REQUEST['style'],$avail_styles))
{
session_start();
$_SESSION['style'] = $_REQUEST['style'];
echo "1"; exit;
}
echo "0"; //No Changes
$("#style select").change(function(){
val = $("option:selected",this).val();
//Ping style.php
$.get("style.php",{style:val},function(resonce){
if(response == "1")
{
//Load the new style sheet or document.location to refresh
}
});
})
<link rel="stylesheet" type="text/css" href="<?php echo $_SESSION["style" ]?>.css" />
您應該能看到這是如何工作的,但作爲即時通訊的一大高峯所以生病的時候可以在稍後添加更多描述性答覆,希望這有助於。