Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Drupal站点中的PHP文本大小选择器仅在登录时工作_Php_Css_Drupal - Fatal编程技术网

Drupal站点中的PHP文本大小选择器仅在登录时工作

Drupal站点中的PHP文本大小选择器仅在登录时工作,php,css,drupal,Php,Css,Drupal,我在Drupal站点中有一个PHP文本大小选择函数: 它使用这个选择器…: <ul id="font-sizes"> <li class="one"><a href="<?php global $base_url; print $base_url;?>/sites/all/themes/x/resize.php?set=small">Normal Font-Size</a></li> <

我在Drupal站点中有一个PHP文本大小选择函数:

它使用这个选择器…:

<ul id="font-sizes">
        <li class="one"><a href="<?php global $base_url; print $base_url;?>/sites/all/themes/x/resize.php?set=small">Normal Font-Size</a></li>
        <li class="two"><a href="<?php global $base_url; print $base_url;?>/sites/all/themes/x/resize.php?set=medium">Medium Font-Size</a></li>
        <li class="three"><a href="<?php global $base_url; print $base_url;?>/sites/all/themes/x/resize.php?set=large">Large Font-Size</a></li>
</ul>
…它修改样式表链接…:

<link rel="stylesheet" type="text/css" media="screen"  href="<?php global $base_url; print $base_url;?>/sites/all/themes/x/<?php echo isset($_COOKIE['sitestyle'])?$_COOKIE['sitestyle']:'small'; ?>.css" />

Drupal通常被设置为缓存匿名用户的页面。因此,即使设置了cookie,返回的页面也将是相同的


如果您的服务器可以处理负载,您可以在“管理性能”页面中禁用缓存,然后它就可以工作了

你确定cookie已经设置好了吗?登录时,页面之间会保留选定的大小,所以我想是这样的。不幸的是,我来自一个前端背景,所以我对cookies等的了解不是最好的。离题:你只需要在函数中执行一次全局$base\u url。
<?php setcookie ('sitestyle', $_GET['set'], time()+31536000,'/', 'mysite.co.uk', '0'); header("Location: ".$_SERVER['HTTP_REFERER']); ?>