求助 版主:官方研发技术组
我想判断用户组id=2的用户才能浏览网站
类型:迅睿CMS 更新时间:2022-06-23 18:38:40 判断用户组


我想判断用户组id=2的用户才能浏览网站。

用户组有:0, 1,2

0是没有注册 的用户组,1为新注册的用户组,2为vip用户组


0,和1的用户组登录后,跳到指定的页面,

成为用户组id=2后,可以正常浏览网站?


这样的功能是什么钩子可以完成?

回帖
  • 不靠谱的小男人
    #1楼    不靠谱的小男人
    2022-06-23 15:52:58
    Chrome 0
    可以在模板里面判断,
    {if dr_in_array(2, $member.groupid)}
    
    正常访问
    
    {else}
    禁止
    {/if}
  • 多一边
    #2楼    多一边
    2022-06-23 16:01:03
    Chrome 0
    不靠谱的小男人
    $member.groupid
    都是这个是数组怎么办呢?
  • 小波工作室--标签和API大师
    #3楼    小波工作室--标签和API大师
    2022-06-23 16:01:33
    Chrome 0
    \Phpcmf\Hooks::app_on('appname', 'cms_init', function() {
        // 在网站初始化之后(不适用于静态页面)
        if (IS_ADMIN ) {
            return; // 后台跳过
        } esleif (IS_MEMBER) {
             return; // 用户中心跳过    
        } esleif (IS_API) {
             return; // api跳过
        } esleif (IS_API_HTTP) {
             return; // api跳过
        } elseif (in_array(\Phpcmf\Service::L('Router')->class, ['register', 'login', 'api', 'pay'])) {
            return; // 登录相关地址跳过
        }
        if (!dr_in_array(2, \Phpcmf\Service::C()->member['groupid'])) {
            dr_redirect("aaa.html");exit;
       }
    });
    满意答案
  • 多一边
    #4楼    多一边
    2022-06-23 18:38:40
    Chrome 0
    @小波工作室--标签和API大师:感谢回复!已经解决