备忘录:给PHPCMS V9 增加关闭网站功能

admin 发表于 [PHP] 分类,标签: PHP代码 二次开发 phpcms
0

\phpcms\modules\admin\templates\setting.tpl.php:

在代码

<div id="div_setting_1" class="contentList pad-10">
<table width="100%"  class="table_form">

后面另起一行,添加代码:

<!-- Admpub: -->
<tr>
    <th width="120">&#x7F51;&#x7AD9;&#x72B6;&#x6001;</th>
    <td class="y-bg"><input name="setconfig[website_is_closed]" value="2" type="radio"<?php echo ($website_is_closed==2) ? ' checked="checked"' : '';?> /> &#x4EC5;&#x4F9B;&#x7BA1;&#x7406;&#x5458;&#x8BBF;&#x95EE;<!-- Only admin -->&nbsp;&nbsp;&nbsp;&nbsp;
	<input name="setconfig[website_is_closed]" value="1" type="radio"<?php echo ($website_is_closed==1) ? ' checked="checked"' : '';?> /> &#x7981;&#x6B62;&#x6240;&#x6709;&#x4EBA;&#x8BBF;&#x95EE;<!-- Ban all -->&nbsp;&nbsp;&nbsp;&nbsp;
	<input name="setconfig[website_is_closed]" value="0" type="radio" <?php echo (!$website_is_closed) ? ' checked="checked"' : '';?> /> &#x5141;&#x8BB8;&#x6240;&#x6709;&#x4EBA;&#x8BBF;&#x95EE;<!-- Open to all --></td>
  </tr>
  <tr>
    <th width="120">&#x5173;&#x7AD9;&#x63D0;&#x793A;&#x4FE1;&#x606F;</th>
    <td class="y-bg"><textarea rows="2" cols="20" id="tips" style="height:40px; width:80%" name="setconfig[off_site_because]"><?php echo htmlspecialchars($off_site_because);?></textarea>&nbsp;&nbsp;&nbsp;&nbsp;&#x652F;&#x6301;HTML&#x6807;&#x7B7E;</td>
  </tr>
<!-- /Admpub -->


\phpcms\modules\admin\functions\global.func.php:

在set_config()函数中,在代码

if(in_array($k,array(

后面添加:

/*[SWH|+]:*/'website_is_closed','off_site_because',/*[SWH|+];*/

 

\phpcms\modules\admin\setting.php:

在代码

set_config($_POST['setconfig']);

前面另起一行,添加代码:

                //[SWH|+]:
		if(!empty($_POST['setconfig']['website_is_closed'])){
			$str='<!DOCTYPE HTML><html><head><meta http-equiv="Content-Type" content="text/html; charset='.CHARSET.'" /><meta http-equiv="refresh" content="1;url=index.php" /><title></title></head><body></body></html>';
			if(pc_base::load_config('system','lock_ex')){ 
				file_put_contents(PHPCMS_PATH.'index.html', $str, LOCK_EX);
			}else{
				file_put_contents(PHPCMS_PATH.'index.html', $str);
			}
		}
		unset($str);
		//[SWH|+];

 

\index.php:

在代码

pc_base::creat_app();

前面另起一行,添加代码:

//[SWH|+]:
switch(pc_base::load_config('system','website_is_closed')){
	case '2': //仅允许后台用户访问
		$session_storage = 'session_'.pc_base::load_config('system','session_storage');
		pc_base::load_sys_class($session_storage);
		if(!empty($_SESSION['userid']) && !empty($_SESSION['roleid'])){
			break;
		}
	case '1': //禁止所有人访问
		if($_GET['m']=='admin'){
			break; //可以访问后台
		}
		if(pc_base::load_config('system','off_site_because')!==''){
			echo nl2br(pc_base::load_config('system','off_site_because'));
		}
		exit;
	default: //向所有公开
}
//[SWH|+];

\caches\configs\system.php:
在文件末尾的代码

);
?>

前面添加:

'website_is_closed' => '0',
'off_site_because' => '',

完毕!

发表我的评论