### CMSware结点列表函数CMS_NODELIST详解
#### 一、引言
在内容管理系统(CMS)领域,CMSware作为一款强大的平台,在管理和组织大量数据方面具有独特的优势。其中,CMS_NODELIST函数作为CMSware系统中的一个核心组件,主要用于生成结点列表。本文将详细介绍CMS_NODELIST函数的各项功能及配置选项,帮助用户更好地理解和使用这一强大工具。
#### 二、CMS_NODELIST函数概述
CMS_NODELIST函数是一个用于动态生成结点列表的强大工具,它能够根据不同的参数设置灵活地调用不同类型的结点列表。通过对该函数的深入理解与合理配置,用户可以有效地管理CMSware系统中的内容结构,从而提升用户体验和内容管理效率。
#### 三、CMS_NODELIST函数的基本属性
CMS_NODELIST函数支持一系列属性配置,下面将详细介绍这些属性及其功能:
1. **Type**
- **必需性**:是
- **默认值**:无
- **描述**:该属性用于定义调用结点列表的类型。
- **Type="sub"**:调用指定NodeID下的子结点。
- **Type="set"**:调用自定义的结点列表,可以通过NodeID指定具体的结点。
- **Type="parent"**:调用当前结点的所有父级结点列表。
- **Type="brother"**:调用当前结点的所有同级(兄弟)结点列表。
- **Type="son"**:调用当前结点的所有子结点列表,等同于Type="sub"。
2. **NodeID**
- **必需性**:是
- **默认值**:无
- **描述**:该属性用于指定要调用的结点ID号。
- **NodeID=""**:自动获取NodeID,通常与Type="sub"一起使用。
- **NodeID="0"**:表示根结点,与Type="sub"一起使用时,会调用根结点下的所有子结点。
- **NodeID="8"**:指定单个结点ID进行调用。
- **NodeID="5,6,7,8,9"**:指定多个结点ID进行调用,适合与Type="set"一起使用。
3. **OrderBy**
- **必需性**:否
- **默认值**:NodeSortDESC
- **描述**:该属性用于控制结点列表的排序方式。
- **OrderBy="NodeSortDESC"**:按照结点排序字段逆序排列。
- **OrderBy="NodeSortASC"**:按照结点排序字段正序排列。
4. **NodeGUID**
- **必需性**:否
- **默认值**:无
- **描述**:该属性用于通过结点的唯一标识符来调用结点。
- **NodeGUID="com.cmsware"**:调用结点唯一标识符为“com.cmsware”的结点。
- **NodeGUID="all-com.cmsware"**:调用结点唯一标识符为“com.cmsware”(包括所有子结点)的结点。
- 注意:NodeGUID不能与NodeID同时使用,并且NodeGUID优先级高于NodeID。建议使用“域名.结点名”的形式以确保唯一性。
5. **Ignore**
- **必需性**:否
- **默认值**:无
- **描述**:该属性用于忽略指定的结点ID,多个结点ID之间使用逗号分隔。
- **Ignore="8,9"**:在调用子结点列表时,忽略ID为8和9的结点。
6. **Tpl**
- **必需性**:否
- **默认值**:无
- **描述**:该属性用于指定调用的子模板。
- **Tpl="list_style_1.html"**:调用名为“list_style_1.html”的子模板。
7. **Cache**
- **必需性**:否
- **默认值**:无
- **描述**:该属性用于启用缓存,以提高批量更新的效率。需要注意的是,只有门户版支持此功能。
- **Cache="1"**:启用缓存。特别注意,只有在模版公共调用的部分使用Cache才有效果,例如内容页头部的导航NODELIST调用或top10之类的调用。
8. **returnKey**
- **必需性**:否
- **默认值**:无
- **描述**:该属性用于定义内容列表记录返回哪些字段,以提高更新效能。同样,只有门户版支持此功能。
- **returnKey="Title,Keywords"**:返回标题和关键词字段。
#### 四、返回类型
CMS_NODELIST函数返回一个二维数组($List),包含了以下字段:
- **NodeID**:结点ID
- **TableID**:结点归属的内容模型ID
- **NodeName (Name)**:结点名称
- **NodeURL (URL)**:结点的URL
#### 五、总结
通过本文的详细介绍,我们了解了CMS_NODELIST函数的各种配置选项及其应用场景。正确配置和使用CMS_NODELIST函数可以帮助用户更加高效地管理和展示CMSware系统中的内容结构。无论是对于初学者还是经验丰富的开发者来说,掌握这些基础知识都是非常重要的。希望本文能为大家提供有价值的信息,帮助大家更好地利用CMSware的功能。