ecshop 管理后台菜单及权限管理机制

ecshop 所有的一级菜单选项存放于languages\zh_cn\admin\common.php 文件里面,使用 $_LANG['02_cat_and_goods'] = '商品管理';  这样的格式来设置一级菜单名称。

在 admin\includes\inc_menu.php 文件里面以$modules['02_cat_and_goods']['03_goods_add'] = 'goods.php?act=add'; 这样的方式来设置二级菜单以及二级菜单绑定的链接,

在languages\zh_cn\admin\common.php 里面通过$_LANG['03_goods_add'] = '降价通知列表'; 的方式来设置二级菜单的名称。

添加权限时 首先要在数据库中 ecs_admin_action 表里面添加权限名称字段 然后在 admin\includes\inc_priv.php 文件里面设置权限对照表如:$purview['03_goods_add'] = 'goods_manage';  数组下标为 inc_menu 里面对应的二级下标的值,数组值为数据库设置的权限字段值

然后languages\zh_cn\admin\priv_action.php 里面设置权限的名称 如:$_LANG['03_goods_add'] = '商品管理';   

在生成菜单时  首先读取 inc_menu 里面的所有数据 进行多级遍历  并引入语言文件 生成包含连接和名称的菜单

遍历过程中 根据二级菜单的 名称 去inc_priv.php 文件里面获取 权限对应的字段值 然后通过 系统函数去验证权限  通过后的菜单才会显示

如果一个一级菜单下面没有二级菜单 则删除该一级菜单 代码在 admn/index.php 中。

对于不涉及连接的权限添加 ,可在数据库添加字段后,在inc_priv.php 里面添加权限对照表,然后在语言包languages\zh_cn\admin\priv_action.php  里面将权限字段作为下标添加到文件数组即可 数组值为权限要显示的名称

数据库添加字段时 parent_id  为权限所属分类的父类id

后台配置权限列表可直接读取数据库 按parent_id 分类 然后调取语言文件转换显示即可

猜你喜欢

转载自www.cnblogs.com/shyg/p/10644456.html