首页 CMS教程 正文内容

动易SiteFactory后台菜单架构原理图文介绍

36模板 2022-12-07 17:12:05 CMS教程 879 0
今天给大家介绍动易SiteFactory后台管理菜单的架构原理,如下图所示:

后台管理菜单分为三级菜单即主菜单(一级菜单)、二次菜单、三级菜单。

一级菜单:我的工作台、内容管理、商店管理、客户关系管理等;
二级菜单:信息管理、生成管理、评论管理、采集管理等;
三级菜单:内容管理、专题内容管理、回收站管理等。

一 、菜单的配置文件

1、配置文件所在位置

后台菜单项目都保存在统管理员“Common”文件夹目录中的 “MainMenu.xml” 文件中,具体位置:“根目录\Admin\Common\MainMenu.xml”。

2、菜单配置文件的架构

打开 MainMenu.xml 文件你会看见如下架构

总框架

复制代码
代码如下:

<?xml version="1.0" encoding="utf-8"?>
<menu>
菜单代码内容
</menu>
“菜单代码内容”如下:
<channelMenu id="ContentManage" title="内容管理" … 一级菜单
<mainMenu id="ContentManage" title="信息管理" … 二级菜单
<subMenu id="CategoryInfoManage" title="内容管理" … 三级菜单
</subMenu>
</mainMenu>
</channelMenu>

<channelMenu  ..>  </channelMenu> 代表的是 “一级菜单”,如下图红色部分;

<mainMenu .. > </mainMenu> 代表的是 “二级菜单”,如下图红色部分;

<subMenu .. > </subMenu>  代表的是 “三级菜单”,如下图红色部分;

二、 菜单节点的参数配置

下图为配置文件中部分参数的作用:

     参数名称

               参数作用

 id

 菜单id ,要求在xml文件中必须是唯一的。

 title

 菜单显示名称,显示在菜单页面上。

leftUrl

 指定系统左框架中的页面,点击后将刷新左侧框架中的页面。

 rightUrl

 指定系统右框架中的页面,点击后将刷新右侧框架中的页面。

showOnForm

 布尔型,角色管理是否配置此菜单中链接页面的管理权限,如果填写的不是布尔型默认为 false。

operateCode

 定义此菜单的权限操作码,
如果您不想指定任何权限可以设置为 operateCode="None" 值。

 description

菜单功能的描述信息。

参数举例


复制代码
代码如下:

<subMenu id="CategoryInfoManage" title="内容管理" operateCode="CategoryInfoManage" leftUrl="Contents/NodeTree.aspx?ShowType=ContentManage" rightUrl="Contents/ContentManage.aspx" ShowOnForm="true" Description="" />

1、“title”参数的作用 : 显示菜单的名称

2、“leftUrl”和“rightUrl”参数的作用:系统将刷新左右两侧的框架页内容。

3、“OperateCode” 参数作用: 菜单的访问权限操作码,就是指这个菜单的访问权限,系统定义了很多权限操作码,一个普通管理员拥有一个或多个角色,角色包含了很多权限操作码。

举例  普通管理员 A 的角色拥有 信息管理权限

普通管理员 B 的角色没有 信息管理权限
 
那么他们登陆后,菜单内容管理,管理员A则会看到,管理员B就不会看到,因为内容管理菜单 指定了访问权限操作码 operateCode="InfoManage"。

注意:1  超级管理员不收权限操作码限制。2  operateCode="None" 代表此菜单不需要任何访问权限限制。
   
4、“ShowOnForm” 参数作用:是否在用户管理 >> 管理员管理 >> 角色管理 >> 常规模块权限设置中配置.举例:内容管理菜单节点设置了 ShowOnForm="true" 那么角色常规模块权限设置就会多出此选项(如图)

如果勾选了“内容管理”,那么该角色就拥有了菜单配置中的权限操作码,该角色就拥有了内容管理操作码。
如果不想权限设置过细化,如只限制一级栏目权限, 可以这样

复制代码
代码如下:

<channelMenu operateCode="ContentManage" ShowOnForm="true" … 一级菜单
<mainMenu operateCode="ContentManage" ShowOnForm="false" … 二级菜单
<subMenu operateCode="ContentManage" ShowOnForm="false" … 三级菜单
</subMenu>
</mainMenu>
</channelMenu>

这样只有“一级菜单”显示在常规角色管理中了。

注意

1、一个节点中,当“ShowOnForm = true”时,这个节点隶属的操作码必须在整个xml 是唯一的;
2、所有 ShowOnForm = true 的节点,他们的操作码必须各不相同。

通过上面的介绍,我们知道后台管理菜单的自定义配置是通过灵活的XML方式实现的,只需要修改xml配置文件就可以达到相应的效果。SiteFactory? 用户可以方便的更改xml 配置中的文字去实现菜单的多语言效果;可以根据自己的需要进行菜单排序;也自定义菜单中的管理权限;或者扩充自己需要的模块;这种配置方式的灵活性也再一次体现SiteFactory? 使用简单、维护容易,扩展性强等优点。

欢迎 发表评论:

请填写验证码
x