PHPCMS V9去除只有VIP才能投稿的限制

2019-02-21 23:13:19     点击:

代码已验证 网络转载


1、编辑文件 phpcms/libs/classes/form.class.php

2、找到 public static function select_category

3、找到以下代码:

//检查当前会员组,在该栏目处是否允许投稿?
if($is_push=='1' and $r['child']=='0'){
	$sql = array('catid'=>$r['catid'],'roleid'=>$user_groupid,'action'=>'add');
	$array = $priv->get_one($sql);
	if(!$array){
		continue;	
	}
}

修改为

//检查当前会员组,在该栏目处是否允许投稿?
if($is_push=='1' and $r['child']=='0'){
	$sql = array('catid'=>$r['catid'],'is_admin'=>'0','roleid'=>$user_groupid,'action'=>'add');
	$array = $priv->get_one($sql);
	if(!$array){
		continue;	
	}
}


4、修改完成后需要更新缓存,退出会员重新登录



补充说明:


1、在后台添加了新的管理员,并对管理员设置了对应的管理栏目权限。

2、PHPCMS本身只是读取了”category_priv“这个表的所有内容,并没有对是否是管理员进行判断。

3、如果没有添加新的管理员,并没有为新管理员设置管理栏目权限,不会出现以上问题。

4、在$sql语句中加入”is_admin'=>'0'“是为了,增加一条SQL判断,区分是否为管理员还是用户组。