phpcms如果设置了栏目页面的会员组访问权限后,非权限会员登陆只提示“您没有访问该信息的权限!”,然后就没有然后了……
这里我们修改一下代码,让它可以自动跳转到会员登录页面。
打开phpcms\modules\content\index.php 修改一下地方,注意红色部分是新增
大约74行
//检查文章会员组权限
if($groupids_view && is_array($groupids_view)) {
$_groupid = param::get_cookie('_groupid');
$_groupid = intval($_groupid);
if(!$_groupid) {
$forward = urlencode(get_url());
showmessage(L('login_website'),APP_PATH.'index.php?m=member&c=index&a=login&forward='.$forward);
}
/*if(!in_array($_groupid,$groupids_view)) showmessage(L('no_priv'));*/
if(!in_array($_groupid,$groupids_view)){
$forward = urlencode(get_url());
showmessage(L('no_priv'),APP_PATH.'index.php?m=member&c=index&a=login&forward='.$forward);
}
} else {
//根据栏目访问权限判断权限
$_priv_data = $this->_category_priv($catid);
if($_priv_data=='-1') {
$forward = urlencode(get_url());
showmessage(L('login_website'),APP_PATH.'index.php?m=member&c=index&a=login&forward='.$forward);
} elseif($_priv_data=='-2') {
/*showmessage(L('no_priv'));*/
$forward = urlencode(get_url());
showmessage(L('no_priv'),APP_PATH.'index.php?m=member&c=index&a=login&forward='.$forward);
}
}
找到 //列表页 public function lists() 修改
if($_priv_data=='-1') {
$forward = urlencode(get_url());
showmessage(L('login_website'),APP_PATH.'index.php?m=member&c=index&a=login&forward='.$forward);
} elseif($_priv_data=='-2') {
/*showmessage(L('no_priv'));*/
$forward = urlencode(get_url());
showmessage(L('no_priv'),APP_PATH.'index.php?m=member&c=index&a=login&forward='.$forward);
}
至此,phpcms 栏目和文章页面设置权限后,如果提示“您没有访问该信息的权限”就可以跳转到会员登陆页面了
相关文章
phpcms-v9中将一个站点下的文章内容完美的推送到另一个站点下2024-09-24
phpcms loop循环判断是否为最后一条的代码2024-06-18
Phpcms V9 文章或图片模型增加相关下载功能2022-12-30
phpcms文章列表增加一键推送到百度功能2022-12-08
phpcms 标题SEO栏目不同的代码2022-11-14
PHPCMS替换内容的两种方法:str_replace和preg_replace2022-10-25
phpcms 搜索结果第一页比设定的多一条数据的解决办法2021-01-05
phpcms v9 字段多行文本不换行的解决办法2020-09-22
phpcms 模板header包含action="lists"导致搜索结果错误的解决方案2020-04-26
phpcms转向链接过滤#的问题解决2020-04-23