PHPcms V9全站标签(自定义变量)设置

时间: 2013-04-13 / 分类: 网站技术 / 被围观: 1,700 次 / 2个评论 发表评论

其实这个教程是在官方论坛看到【化蝶自在飞】管理员写的,可是我当时看了半天也没有看懂怎么用,在这里我就详细说一下是怎么用。

尊重知识产权,原文链接:http://bbs.phpcms.cn/thread-255810-1-1.html

修改方法也不说了,去看原文吧。

下面只做解释和方法。

看到的从28行到32行都可以删除的,这个作者做固定演示。

1
2
3
4
<div id="var0"><span style="width: 60px;"><input title="点击复制到剪贴板" ondblclick="clipboardData.setData('text',this.name); alert(this.name +'已复制到剪贴板');" type="text" name="{$setting[var_value][0]}" size="4" value="0" /></span><span style="width: 150px;"><input type="text" name="setting[var_description][0]" size="21" value="插件作者" /></span>
<span style="width: 150px;"><input type="text" name="setting[var_name][0]" size="21" value="plusauthor" /></span>
<span style="width: 150px;"><input type="text" name="setting[var_value][0]" size="21" value="化蝶自在飞" /></span>
<span> <a onclick="var_del(0)" href="###">删除</a></span></div>

V9里面操作页面在:设置-站点管理(选择站群站点)-修改,滚动滚动条到最下面,也就是水印的下面。

当然我们自定义变量点击确定之后,数据会写入\caches\caches_commons\caches_data\sitelist.cache.php这个缓存文件里面。

看看怎么在模板里面调用。

首先每一个用到自定义变量的模板都需要加载缓存,否则不能使用,而且加载缓存必须在变量调用之前,否则也不能使用。

调用方式:

1
2
3
4
5
<?php    
$siteinfo = getcache('sitelist', 'commons');    
$siteid = $siteid?$siteid:1;//阿拉伯数字是站点的ID。    
$site_setting = string2array($siteinfo[$siteid]['setting']);    
?>

上面是加载缓存,然后调用

1
2
3
<?php  
echo $site_setting['var_value'][1];//阿拉伯数字是索引值,输出变量值。  
?>

如果要输出变量名,那value改成name就OK了。

如何在  {pc:}里面使用自定义标签呢?

首先我们的要把自定义变量附值给一个变量,然后在{pc:}里面才能使用,因为{pc:}里面不能用这样的符号。上面的加载缓存代码修改一下:

1
2
3
4
5
6
<?php    
$siteinfo = getcache('sitelist', 'commons');    
$siteid = $siteid?$siteid:1;  
$site_setting = string2array($siteinfo[$siteid]['setting']);    
$zdy = $site_setting['var_value'][1];    
?>

这样我们就能直接用zdy这个变量了,就像系统变量一样的使用。