在 phpcmsv9 的后台除了TDK,几乎没有可以随意使用的全局变量,像公司名、地址、电话、二维码等这样的零散信息,如果后没有可容纳的变量那只能写在模板中,而一旦要修改也只能修改模板,这非常不方便。如果在后台有容纳这些零散信息的变量就好了。
好了,今天要分享的正是给 phpcmsv9 自定义全局变量,让后台有可以容纳零散信息的变量,方便全局调用,也方便随时修改。
phpcmsv9 自定义全局变量有5个步骤
(为了方便理解,这里以添加 网站备案号、微信二维码 为例来演示自定义全局变量的添加)
第一步:系统配置文件添加自定义变量名
phpcmsv9 的很多配置信息是直接保存在文件中的,比如默认的 css 路径、js 路径、图片路径,因此这里我们自定义的全局变量也添加到系统配置文件 system 中(/caches/configs/system.php),在文件中添加如图所示变量:
第二步:自定义变量添加全局常量定义
phpcmsv9 进入入口文件后调后走的第一个文件就是 phpcms/base.php ,因此第二步要修改的就是这个 base.php 文件,如图所示
第三步:修改后台配置模板文件
这一步修改的目的就是为了后面可以通过后台修改配置,零散信息通常有两种,一种是文本类,一种是图片类,所以这里添加的实例 网站备案号 代表文本类信息,微信二维码代表图片类信息。
图片上传phpcmsv9自带有插件,这里就直接用了,(一个自定义变量对应一个tr对,不过用的时候注意下你添加的变量名称,不明白的下面截图有标识)
<!-- 网站备案号 start--> <tr> <th width="120"><?php echo L('setting_app_record')?></th> <td class="y-bg"><input type="text" class="input-text" name="setconfig[app_record]" id="app_record" size="50" value="<?php echo $app_record?>" /><div class="onShow">请输入网址备案号</div></td> </tr> <!-- 网站备案号 start--> <!--二维码 start--> <tr> <th width="120"><?php echo L('setting_app_wechat')?></th> <td class="y-bg"><input type="text" class="input-text" name="setconfig[app_wechat]" id="app_wechat" size="50" value="<?php echo $app_wechat?>" readonly="readonly"/> <!--二维码图片上传start--> <script type="text/javascript" src="<?php echo JS_PATH?>content_addtop.js"></script> <script type="text/javascript" src="<?php echo JS_PATH?>swfupload/swf2ckeditor.js"></script> <a href="javascript:void(0);" onclick="flashupload('thumb_images', '附件上传','app_wechat',thumb_images,'1,jpg|jpeg|gif|png|bmp,1,,,0','content','1','<?php echo upload_key('1,jpg|jpeg|gif|png|bmp,1,,,0');?>');return false;"> <img src="/statics/images/icon/upload-pic.png" id="app_wechat_preview" width="135" height="113" style="cursor:hand"></a><div class="onShow">点击左侧图框上传图片</div> <script type="text/javascript"> $(document).ready(function(){ if ($("#app_wechat").val()) { $("#app_wechat_preview").attr("src",$("#app_wechat").val()); } }); </script> <!--二维码图片上传end--> </td> </tr> <!--二维码 end-->
第四步:修改添加语言包配置
修改语言包配置的目的是在后台显示变成中文,否则看到的就是你添加的变量名称,具体添加到哪个位置不重要,重要的是添加到 phpcms/languages/zh-cn/admin.lang.php (因为是后台信息)
第五步:修改配置文件配置函数
这步修改的目的是实现将前面添加的自定义变量写入系统配置文件,或者从配置文件中读出变量信息。
下面来看看前面添加的自定义变量的效果