当一个新的portal被创建时你可以选择模版。模版描述了portal的以下属性:
1、 portal细节:定义portal的一些属性(皮肤、标题、选项)
2、 角色:默认的新portal的管理者
3、 标签:定义新portal的所有标签及其这些标签的属性
4、 模块:为每个标签定义所有已安装的模块
5、 内容:模版也可以包括支持导入/导出的模块的内容
当然,你也可以创建空白portal的预先定义好选项的模版。
PORTAL模版是以.template为后缀名的XML文件,位于DotNetNuke安装目录下的Portals"_default文件夹下。有两种模版:管理模版和portal模版。管理模版是唯一的,包括管理菜单,所有portal都将使用,名为:admin.template,管理模版不能修改。
另外一个特殊的要求是在创建一个portal时,部署一些特殊的文件到portal的文件夹。例如:一个logo图标,一些相关的文档,一个预先定义好的CSS文档等等。你可以将它们,压缩到一个zip文件包中,,称为资源包。为了防止被下载,这个文件包要加上.resources后缀,每个portal模版都有对应的资源文件包,资源文件包要和模版放置在同一目录下即:Portals/_default。
DNN支持模版导入/导出,所以一般情况下不需要手动创建。
定义模版需要注意以下问题:
1、 Xml处理相当敏感(注意格式)
2、 模版文件包括四个主要部分:roles、settings、tabs、folders
3、 定义portal一般属性的设置节点必须唯一
4、 Roles部分可以有多个role节点,All Users和Unauthenticated Users 不能作为role名使用
5、 Tabs部分,可以有很多tab节点
6、 为了定义唯一的父tab,需要从根定义路径,语法:ParentTab/ChildTab/ChildTab
7、 Tab节点还可以有panes节点,panes节点可以有一些pane节点,pane节点可以有modules节点,modules节点可以包含一些module节点
8、 Module节点的moduleID节点提供每个模块的唯一标识,moduleID用来表示同一模版在不同标签的多个实例,如果想在多个地方使用同一个实例,请在module节点保证同样的moduleID。