联系官方销售客服

1835022288

028-61286886

求助 版主:官方研发技术组
怎么调用会员权限内能访问的所有文档
类型:迅睿CMS 更新时间:2020-05-22 11:22:49

栏目设置会员访问权限以后,


想在会员中心  调处该等级会员权限内能访问的所以文档。

 

改如何写啊

回帖
  • #1楼    迅睿框架创始人
    2020-05-21 16:07:28
    Google Pixel 手机 0
    这个我要想想该怎么写,有些复杂度
  • hamwn
    #2楼    hamwn
    2020-05-21 16:12:29
    Chrome 0
    回复迅睿框架创始人 嗯 就因为你把 会员权限放到哪一堆里面了 整起来 有点儿复杂 把会员权限这块 我感觉需要优化下 嘿嘿!!!
  • hamwn
    #3楼    hamwn
    2020-05-21 16:19:02
    Chrome 0
    增加悬赏(设置悬赏)金:10元,希望大家给予帮助!
  • #4楼    迅睿框架创始人
    2020-05-21 16:22:30
    Chrome 0
    $catids = implode(', ', array_keys(\Phpcmf\Service::C()->_module_member_category(\Phpcmf\Service::L('cache')->get('module-1-news', 'category'), 'news', 'show')));
    表示当前登录的会员,具备news模块的所有可访问的权限栏目,id集合,1,2,3,4,5,6
  • hamwn
    #5楼    hamwn
    2020-05-21 16:25:17
    Chrome 0
    回复迅睿框架创始人 好的 谢谢 我试试
  • hamwn
    #6楼    hamwn
    2020-05-21 16:59:16
    Chrome 0
    回复迅睿框架创始人 还是不对 没经过任何赛选 栏目全部出来了





  • #7楼    迅睿框架创始人
    2020-05-21 17:11:28
    Chrome 0
    说明全部栏目都有访问权限
  • hamwn
    #8楼    hamwn
    2020-05-21 17:19:20
    Chrome 0
    回复迅睿框架创始人 怎么可能 我都对该用户设置了访问权限 在前台 部分栏目都是无法访问的 应该是没筛选出来
  • #9楼    迅睿框架创始人
    2020-05-21 17:30:43
    Chrome 0
    $dir = 'news';
    $category = \Phpcmf\Service::L('cache')->get('module-'.SITE_ID.'-'.$dir, 'category');
    foreach ($category as $id => $t) {
        // 筛选可访问的栏目权限
        if (!dr_member_auth(\Phpcmf\Service::V()->member_authid, \Phpcmf\Service::V()->member_cache['auth_module'][SITE_ID][$dir]['category'][$t['id']]['show'])) {
            // 用户的的权限判断
            unset($category[$id]);
        }
    }
    $catids = implode(', ', array_keys($category));
    
    var_dump($catids);
  • hamwn
    #10楼    hamwn
    2020-05-22 09:13:42
    Chrome 0
    回复迅睿框架创始人 还是一个效果 我看这里有相似筛选 但是没找到地方
    dd4
  • #11楼    迅睿框架创始人
    2020-05-22 09:22:54
    Chrome 0
    $dir = 'news';
    $category = \Phpcmf\Service::L('cache')->get('module-'.SITE_ID.'-'.$dir, 'category');
    foreach ($category as $id => $t) {
        // 筛选可访问的栏目权限
        if (!dr_member_auth(\Phpcmf\Service::C()->member_authid, \Phpcmf\Service::C()->member_cache['auth_module'][SITE_ID][$dir]['category'][$t['id']]['show'])) {
            // 用户的的权限判断
            unset($category[$id]);
        }
    }
    $catids = implode(', ', array_keys($category));
    
    var_dump($catids);
  • hamwn
    #12楼    hamwn
    2020-05-22 10:09:30
    Chrome 0
    回复迅睿框架创始人 这个可以用 但是只能用在首页不能在会员中心用{module module=news order=updatetime num=9} 这种玩意儿 在哪里修改哎!~~~修改他的筛选条件
  • #13楼    迅睿框架创始人
    2020-05-22 10:11:47
    Chrome 0
    <?php
    $dir = 'news';
    $category = \Phpcmf\Service::L('cache')->get('module-'.SITE_ID.'-'.$dir, 'category');
    foreach ($category as $id => $t) {
        // 筛选可访问的栏目权限
        if (!dr_member_auth(\Phpcmf\Service::C()->member_authid, \Phpcmf\Service::C()->member_cache['auth_module'][SITE_ID][$dir]['category'][$t['id']]['show'])) {
            // 用户的的权限判断
            unset($category[$id]);
        }
    }
    $catids = implode(', ', array_keys($category));
    $where = urlencode("catid IN (".$catids.")");
    ?>
    {module module=news where=$where order=updatetime num=9}
    满意答案
  • hamwn
    #14楼    hamwn
    2020-05-22 11:22:36
    Chrome 0
    回复迅睿框架创始人谢谢 勉强实现了 我需要的功能,跟我预想的还差那么一丢丢。 非常感谢。
  • hamwn
    #15楼    hamwn
    2020-05-22 11:22:49
    Chrome 0
    迅睿框架创始人:谢谢 勉强实现了 我需要的功能,跟我预想的还差那么一丢丢。 非常感谢。