1. 标签使用
1.1. 现有字段不满足需求,给文章表等加字段,推荐使用自定义模型
不建议直接在数据库表里面加字段,建议使用自定义模型。拖拽生成,一键绑定,即可使用。
1.在代码生成器制作模型
2.在自定义模型处导入模型json
3.在栏目管理处绑定导入的模型
4.在文章管理处使用导入的模型
5.在模板中使用带自定义模型的标签,需先了解模板基本使用
6.根据示例代码中 计数开关 字段控制输出内容,开、关效果分别如下
1.2. 自定义标签获取datetime类型的时间数据
以update_date(别名updateDate)为例,${field.updateDate?replace("T"," ")?datetime?string("yyyy-MM-dd HH:mm:ss")}
1.3. 设置分页文章序号
<!-- 效果 xxx(文章标题)--10、xxx--11、xxx--12... -->
<!-- 定义计算 上一页的index值 pageSize按需填写 -->
<!-- eg:当前为第二页 , pageSize=10 则index=(2-1)*10-->
<#assign index = (page.cur?number - 1) * pageSize/>
{ms:arclist size=pageSize ispaging=true}
<!-- 定义计算 当前的index值 -->
<!--计算后 result = 10,11,12... -->
<#assign result = index + field.index>
${field.title}--${result}
{/ms:arclist}
1.4. 标签解析报错 The following has evaluated to null or missing
提示信息一般表现为缺少了某个标签,或标签的某个属性丢失;
1、如果提示为field.date问题,优先查看 静态化报错
2、其他问题,建议先将开源中国最新的sql(mdiy_tag表)执行一遍;仍有问题,第一时间反馈,我们会立即解决
1.5. 生成报错?
1、标签没有正确的闭合{ms:page} 最后一个/符合不能少 正确:{ms:page /}
2、字符串类型参数没有加双引号,{ms:channel type=nav } 正确:{ms:channel type="nav" },注意:数值不需要
3、include标签使用了注释 <!-- <#include "url"> --> 正确:<#-- <#include "url"> -->
1.6. 标签能嵌套使用吗?
目前只有部分标签支持嵌套,具体可以参考下方标签说明。
1.7. 怎么获取动态的栏目或文章的typeid?
当你在某个列表页时,使用ms:channel、ms:arclist两个标签时,如果不写typeid,会自动获取当前页面所属栏目的typeid值
1.8. 文章点击量不自动增加
文章点击量是需要使用了的点击量标签之后前后端数据才会增加,同一台电脑多次访问只会增加一次点击量,注意后台的点击数量在去点击文章,看点击量是否增加。
1.9. 用图片标签获取出来的图片总是裂开
如果是开源版,图片标签前面需要加上域名标签({ms:global.host/})才会正常显示图片。
1.10. 标签有类似if判断的功能吗?
mcms4.7.0之后的版本可以支持简单的if判断,5.1之后支持freemarker if指令
<!-- freemarker if简单使用 -->
<!-- eg: 文章如果没有上传缩略图就显示一张默认图片 -->
{ms:arclist}
<#if field.litpic>
<img src="{@ms:file field.litpic/}"/>
<#else>
<img src="默认图片"/>
</#if>
{/ms:arclist}
1.11. 标签属性使用无效
5.1之后属性为字符串类型的需要加引号使用例如:type="son"
1.12. 页面静态化没有更新
1、按shift刷新浏览器 清除浏览器缓存
2、如果清楚缓存还不行,直接编辑一下文章,再静态化刷新页面
1.13. css文件、js文件能用标签吗?
不能,因为标签需要mcms系统解析之后才会渲染效果,而系统不会渲染引入css与js文件