DedeCMS后台权限分配-添加三级目录分配功能

DedeCMS 5.7为后台用户分配权限时,最小颗粒度只能分配到二级栏目,对于有些网站管理来说,不能够满足日常运营的需要,因此需要修改后台,来增加分配三级栏目权限的功能。

DedeCMS后台,通过“系统”->“用户管理”,然后选择用户后进行用户权限的分配,如果需要支持三级栏目权限分配,需要在这里做修改,对应的文件是 sys_admin_user_edit.php

找到文件中对应的部分,修改成如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
while($nrow = $dsql->GetObject('op'))
{
$typeOptions .= "<option value='{$nrow->id}' class='btype'".(in_array($nrow->id, $typeids) ? ' selected' : '').">{$nrow->typename}</option>\r\n";
$dsql->SetQuery("SELECT id,typename FROM #@__arctype WHERE reid={$nrow->id} AND (ispart=0 OR ispart=1)");
$dsql->Execute('s');

while($nrow = $dsql->GetObject('s'))
{
$typeOptions .= "<option value='{$nrow->id}' class='stype'".(in_array($nrow->id, $typeids) ? ' selected' : '').">—{$nrow->typename}</option>\r\n";
//Added by shiqiang<shiqiang.wang@me.com> at 2013-12-10
$dsql->SetQuery(" Select id,typename From `#@__arctype` where reid={$nrow->id} And (ispart=0 Or ispart=1) ");
$dsql->Execute('sub');
while($nrow = $dsql->GetObject('sub')){
$typeOptions .= "<option value='{$nrow->id}' class='subtype'" . (in_array($nrow->id, $typeids) ? ' selected' : '') . ">——{$nrow->typename}</option>\r\n";
}
}
}
include DedeInclude('templets/sys_admin_user_edit.htm');

修改完之后,在“核心“->“网站栏目管理”中看到如下图所示。这是因为如果没有四级栏目的话,就不能够看到对应的内容。

img

那么,用户如何才能修改三级栏目下的文章呢?这里可以通过“核心”->“所有档案列表”来进行查看。

参考资料:

1、DEDECMS后台三级子栏目权限添加修复,频道管理员权限分配问题

2、DedeCMS后台左侧菜单空白不显示

3、DedeCMS二次开发-数据库表说明

cocowool

A FULL STACK DREAMER!