一、添加菜单项
打开 /admin/includes/inc_menu.php文件(后台框架左边菜单),在最后添加一行如下:
$modules['17_other_menu']['sns_list'] = 'sns_list.php?act=list';
ecshop默认一级菜单项有16项,所里这里的例子从17开始。当然这个key可以随便取的,index.php文件中对菜单用 了ksort排序。“17_other_menu” 表示一级菜单,“sns_list”表示二级菜单。等号后面的值表示该菜单栏目打开的页面链接。
二、配置菜单语言
打开 /languages/zh_cn/admin/common.php文件,添加语言
$_LANG['17_other_menu'] = '其它设置';
$_LANG['sns_list'] = 'SNS管理';
这时候,用管理员身份(admin用户)登录后台,便可看到新添加的菜单项了。因为admin的权限是“all”。如果后台有多个 管理员,比如ecshop商城的供货商们,或者其它管理人员(由admin创建的其它可登陆后台的账户),如果想让他们也拥有新添加菜单的查看权利,则必 须为他们分配该栏目的管理权限。
三、把新菜单加入权限列表
打开 /languages/zh_cn/admin/priv_action.php文件,在“权限管理的一级分组”注释行下面添加如下代码
$_LANG['other_manager'] = '其它设置';
这里的“other_manager”是该一级栏目的权限名称,这里和栏目名称“17_other_menu”保持一致,也可以随便取个名。这里以示区别,就没有和菜单名一样。
然后,添加二级栏目“sns_list”的权限名称。在本文件的最后添加即可
//其它管理
$_LANG['sns_list'] = 'SNS管理';
这里这个权限名称和二级菜单名是一致的。这两项现在在哪里呢?如下图
四、把一级菜单和二级菜单的权限关联起来
Ecshop:后台添加新栏目打开数据库,看到{pre}_admin_action表,新增两行数据。如下图
截图中第1列数据是action_id,是该表的自增主键。第2列数据是parent_id,来自上级的action_id。第3列数 据就是step3中定义的权限名(键)。这样的话,两种权限就联系起来了。到这里,打开后台“管理员列表”,点击“分派权限”的图标,便可以看到 step3示图所示权限了。用某后台用户勾选提交,该用户登陆后就能看到新增的菜单项了。\
mysql语句:
INSERT INTO .`admin_action` ( `action_id` , `parent_id` , `action_code` , `relevance` ) VALUES ( NULL , '6', 'shipment_view', '' );