在模板中使用<#list .data_model?keys as k>${k}</#list>输出当前模板的数据模型变量名,可以了解到当前模板中哪些变量是可以直接使用的。
在动态模板中您可能会得出如下信息:
site,RequestParameters,springMacroRequestContext,Request,JspTaglibs,org.springframework.validation.BindingResult.metadata,include,Session,Application,base,import,user,metadata
在静态化模板中您可能会得出如下信息:
site,import,url,include,metadata
其中import,include是Public CMS内置的导入和包含指令; RequestParameters, springMacroRequestContext, Request, JspTaglibs, org.springframework.validation.BindingResult.metadata, Session, Application是springmvc框架向动态模板注入的对象,Public CMS为您提供了很多便捷的解决方案,在不能满足您的需求时,您可以使用框架提供的对象完成比较复杂的业务实现。
1. 通用数据
site
站点
属性 | 类型 | 名称 |
id | int | 站点ID |
name | string | 站点名称 |
useStatic | boolean | 启用静态化 |
sitePath | string | 静态站点访问地址 |
useSsi | boolean | 启用服务器端包含 |
dynamicPath | string | 动态站点访问地址 |
disabled | boolean | 已禁用 |
2. 网页模板通用数据
metadata
模板元数据
属性 | 类型 | 名称 | 示例 |
alias | string | 模板名称 | |
publishPath | string | 发布路径 | |
useDynamic | boolean | 是否可动态访问 | |
needLogin | boolean | 是否需要登录 | |
acceptParamters | string | 可接受参数列表 | |
cacheTime | int | 缓存时间 | |
extendList | list | 扩展字段列表 | |
extendDataList | list | 扩展数据列表 | |
extendData | map | 扩展数据哈希表 | ${metadata.extendData.扩展字段名} |
3. 静态化模板通用数据
url
模板静态化路径,在您静态化内容和分类时,由于静态化文件还未创建,此时模板内读取它们的url属性会得到空值,想要展示当然页面的地址就需要使用${url}
4. 静态化分类模板数据
category
分类实体
attribute
分类扩展
pageIndex
当前页码
5. 静态化内容模板数据
content
内容实体
category
分类
attribute
内容扩展
page
分页
text
文本
6. 推荐位数据
page
带分页的数据
7. 动态模板通用数据
base
当前动态站点的根路径,例如:
<a href=”${base}”>返回首页</a> |
user
当前登录用户
属性 | 类型 | 名称 | 示例 |
id | int | 用户ID | |
siteId | int | 站点ID | |
name | string | 用户名 | |
nickname | string | 昵称 | <#if user??>您好,${user.nickname}<#else>未登录</#if> |
deptId | int | 部门ID | |
roles | string | 角色ID | |
string | 邮件地址 | ||
emailChecked | boolean | 邮件地址已验证 | |
superuserAccess | boolean | 管理员[不代表官方]权限 | |
disabled | boolean | 已禁用 | |
lastLoginDate | date | 上次登录日期 | |
lastLoginIp | string | 上次登录IP | |
loginCount | int | 登陆次数 | |
registeredDate | date | 注册日期 |
8. 动态模板参数数据
在Public CMS后台中您可以设置模板可以接收的参数,请求模板时http可接受的请求参数会被放到模板的数据模型中,您可以直接使用参数名使用。
例如:
我们在某个模板元数据中设置了id为可接受参数 在模板中我们可以使用${id}输出这个参数的值。假如这个id是内容的ID,我们可以使用<@_content id=id>${object.title}</@_content>获取这个id对应得内容,并输出内容的标题 |
0条评论
发表评论