我们在用PHPCMS开发网站的时候,电话、地址、QQ和邮箱等内容可能会在多处被调用,如果能做一个变量可以在后台“基本设置”那里方便修改,前台方便调用,那就比较完美了。这样在更新维护网站的时候都能省不少事,下面作者总结下具体的实现方法。
1、打开/phpcms/modules/admin/templates/site_edit.tpl.php,增加用来存放电话、邮箱、地址和备案号的输入框
<tr>
<th>电话:</th>
<td class=”y-bg”><input type=”text” class=”input-text” name=”phone” id=”phone” size=”30″ value=”<?php echo $data[‘phone’]?>” /></td>
</tr>
<tr>
<th>座机:</th>
<td class=”y-bg”><input type=”text” class=”input-text” name=”tel” id=”tel” size=”30″ value=”<?php echo $data[‘tel’]?>” /></td>
</tr>
<tr>
<th>联系邮箱:</th>
<td class=”y-bg”><input type=”text” class=”input-text” name=”email” id=”email” size=”30″ value=”<?php echo $data[’email’]?>” /></td>
</tr>
<tr>
<th>备案号:</th>
<td class=”y-bg”><input type=”text” class=”input-text” name=”beianhao” id=”beianhao” size=”30″ value=”<?php echo $data[‘beianhao’]?>” /></td>
</tr>
<tr>
<th>QQ:</th>
<td class=”y-bg”><input type=”text” class=”input-text” name=”qq” id=”qq” size=”30″ value=”<?php echo $data[‘qq’]?>” /></td>
</tr>
<tr>
<th>联系地址:</th>
<td class=”y-bg”><input type=”text” class=”input-text” name=”address” id=”address” size=”60″ value=”<?php echo $data[‘address’]?>” /></td>
</tr>
<tr>
<th>在线沟通:</th>
<td class=”y-bg”><input type=”text” class=”input-text” name=”qiao” id=”qiao” size=”60″ value=”<?php echo $data[‘qiao’]?>” /></td>
</tr>
2、打开数据表v9_site增加相应的字段
`phone` varchar(40) DEFAULT NULL, `tel` varchar(40) DEFAULT NULL, `email` varchar(50) DEFAULT NULL, `beianhao` varchar(50) DEFAULT NULL, `address` varchar(255) DEFAULT NULL, `qq` varchar(50) DEFAULT NULL, `qiao` varchar(500) DEFAULT NULL
3、打开文件/phpcms/modules/admin/site.php,public function edit() {}做相应的数据处理
$domain = isset($_POST[‘domain’]) && trim($_POST[‘domain’]) ? trim($_POST[‘domain’]) : ”;//下面增加
$phone = isset($_POST[‘phone’]) && trim($_POST[‘phone’]) ? trim($_POST[‘phone’]) : ”;
$tel = isset($_POST[‘tel’]) && trim($_POST[‘tel’]) ? trim($_POST[‘tel’]) : ”;
$email = isset($_POST[’email’]) && trim($_POST[’email’]) ? trim($_POST[’email’]) : ”;
$beianhao = isset($_POST[‘beianhao’]) && trim($_POST[‘beianhao’]) ? trim($_POST[‘beianhao’]) : ”;
$address = isset($_POST[‘address’]) && trim($_POST[‘address’]) ? trim($_POST[‘address’]) : ”;
$qiao = isset($_POST[‘qiao’]) && trim($_POST[‘qiao’]) ? trim($_POST[‘qiao’]) : ”;
$qq = isset($_POST[‘qq’]) && trim($_POST[‘qq’]) ? trim($_POST[‘qq’]) : ”;
//$sql = array(‘name’=>$name,’dirname’=>$dirname, ‘domain’=>$domain, ‘site_title’=>$site_title, ‘keywords’=>$keywords, ‘description’=>$description, ‘release_point’=>$release_point, ‘template’=>$template, ‘setting’=>$setting, ‘default_style’=>$default_style);
//改成下面的
$sql = array(‘qq’=>$qq,’phone’=>$phone,’beianhao’=>$beianhao,’tel’=>$tel,’email’=>$email,’address’=>$address,’qiao’=>$qiao,’name’=>$name,’dirname’=>$dirname, ‘domain’=>$domain, ‘site_title’=>$site_title, ‘keywords’=>$keywords, ‘description’=>$description, ‘release_point’=>$release_point, ‘template’=>$template, ‘setting’=>$setting, ‘default_style’=>$default_style);
4、网站前台调用前面定义好的内容
$sites = getcache('sitelist', 'commons');//获取上述定义变量的缓存数据 $site = $sites[1]; //$site[qq];//调用某个变量 //define('QQ',$site[qq]); //或者在入口文件/phpcms/base.php里面定义一个常量保存对应的数据