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

    今天给大家介绍动易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? 使用简单、维护容易,扩展性强等优点。

发表评论

发表评论