在wordpress网站我有style.php和style.php回显css值从管理面板控制,如颜色皮肤,字体样式这个工作得很好,但我想控制前端的选项,如href属性,例如{{1 }}
答案 0 :(得分:0)
如果您要在地址栏中发送值,如
http://example.com/?skin=red-skin
这可以通过switch或if语句选择css来完成。现在每个子页面都有棘手的部分。现在您可以创建会话变量
$_SESSION['skin'] = 'red-skin';
然后,每个页面都会查找会话值,或者使用switch / if语句来使用默认值。
if(isset($_GET['skin'])) {
$skin=$_GET['skin'];
$_SESSION['skin']=$skin;
} else {
$skin=$_SESSION['skin']
}
switch(true){
case($skin = 'red-skin'):
echo '<link rel="stylesheet" type="text/css" href="/templates/css/style_red.php" />';
break;
default:
echo '<link rel="stylesheet" type="text/css" href="/templates/css/style.php" />';
break;
}
只有SESSION变量的缺点是它只适用于该人在网站上的时间或现场15-20分钟的空闲时间。取决于服务器的设置方式。如果你有人可以改变他们登录的方式。你最好创建一个表并存储用户和皮肤选择,并在需要时选择/更新。
调用css / php文件时:
<?
if(isset($_GET['skin'])) {
$skin=$_GET['skin'];
$_SESSION['skin']=$skin;
} else {
$skin=$_SESSION['skin']
}
?>
<link rel="stylesheet" type="text/css" href="/templates/css/style.php?color=<? echo $skin; ?>" />
CSS中的将switch / if语句分解为css
答案 1 :(得分:0)
p { color: <?php echo (isset($_GET['color-red'])) ? "#FF0000" : "#000000" ?> }
你也可以这样做..
switch($_GET['color']) {
case "red":
$color = "#FF0000";
break;
// etc..
default:
$color = "#000000";
break;
}
...
p { color: <?php echo $color ?> }
然后使用..