1. 内容 ${field.*}
获取内容的基本信息
1.1. 适用模版
内容模版
[!tip]只能单独使用在具体内容模版
1.2. 格式
${field.*}
1.3. 标签
[!tip] 在栏目绑定的详情模板,如开源的news-detail模板;${field.文章相关字段}即可输出当前文章对应数据;不需要被{ms:arclist}或{ms:data}标签包裹
字段名称 | 描述 |
---|---|
${field.title} | 内容标题 |
${field.shorttitle} | 内容副标题 |
${field.id} | 文章id |
${field.hit} | 文章点击数,不约束ip限制,在内容页使用点击会自动累加,注意:必须在详情页模版中使用此标签,文章预览量才会增加,否则文章预览量为不会生效,默认0,标签会生成对应的前端接口请求代码,每次刷新页面都会调用接口。 |
${field.date?string("")} | 根据用户指定的格式输出时间默认${field.date?string("yyyy-MM-dd")} |
${field.author} | 文章发布作者 |
${field.keyword} | 文章关键字 |
${field.source} | 文章发布来源 |
${field.content} | 文章内容,截取1-30个内容长度{@ms:len field.content 30/},注意:由于内容是编辑器编辑过后的html内容,所以截取时候会存在html截取不完整,导致页面html出问题,如果只需要显示简短的内容描述,推荐使用描述或关键标签。注意!content标签不能使用在列表页和主页,只能在具体的详情页使用, |
${pre.link} | 上一篇文章链接。根据排序字段显示顺序(如果上级没有栏目那么默认取当前栏目 一般与上一篇文章标题一起用)范例:上一篇: <a href="{ms:global.html/}${pre.link}">${pre.title}</a>上一篇作者:${pre.author}只需要将内容标签(field)替换为上一篇标签(pre)就可以取到对应的内容 |
${next.link} | 显示下一篇文章链接。范例:下一篇: <a href="{ms:global.html/}${next.link}">${next.title}</a>下一篇作者:${next.author}只需要将内容标签(field)替换为下一篇标签(next)就可以取到对应的内容 |
${field.link} | 当前文章内容链接:{ms:global.html/}${field.link} |
${field.descrip} | 文章摘要 |
${field.litpic} | 文章缩略图 范例:<img src="{@ms:file field.litpic/}"/> |
${field.tags} | 文章标签,多个以","隔开 |
${field.typeid} | 当前所属栏目id,可在文章页取当前栏目id,也能在栏目列表页取当前栏目id |
${field.type*} | 可用标签参考 ms:channel 标签的 ${field.type*} |
${field.*} | 自定义模型标签,当前文章属于绑定了模型的栏目,就可以使用该标签,使用参考文章列表 |
${field.typepath} | 获取当前栏目路径 |
[!注意] 单篇文章详情没有上下篇,列表文章详情的上下篇范围是当前文章所属栏目下的所有文章,不跨栏目
[!tip]
${filed.*}
自定义模型字段使用与ms:arclist
里面一致;
自定义模型字段不能与现有字段名称相同,例如:基本字段里面已经有了${filed.title}
,自定义模型字段就不能再有title
的字段
2. 范例
2.1. 基本用法
<h3>${field.title}</h3>
<p>时间:${field.date?string("yyyy-MM-dd")}作者:${field.author}</p>
<p>文章内容:${field.content}</p>
<p>上一篇:<a href="{ms:global.html/}${pre.link}">${pre.title}</a></p>
<p>下一篇:<a href="{ms:global.html/}${next.link}">${next.title}</a></p>
[!tip] 上一篇、下一篇的排序显示是根据文章的实际发布时间排序,列表的排序规则不能决定上一篇、下一篇的显示顺序。因为如果多个列表使用不同的排序规则,而详情页面是静态化之后的文件,所以没办法确定使用那种排序显示。
2.2. 将富文本转为纯文本
<div>
富文本文章内容: ${field.content}
</div>
<div>
纯文本文章内容: ${MUtil.html2text(field.content)}
</div>
2.3. 专题页面
专题页面可以理解为在其他栏目中挑选一类的文章,聚合显示在内容页面上,例如可以新增内容属性奥运会
,再通过文章列表
标签的flag
属性进行获取,再通过自定义页面
的功能绑定个性化的专题模版,通过文章内容
的来源
字段绑定自定义页面
路径。这样就实现个性化的专题页面。
<!-- 在文章详情页,获取所有文章中某类(内容属性)文章列表,指定好flag后,需要指定typeid=0才能在所有文章中查询,不指定就是当前栏目的-->
{ms:arclist flag="c" typeid=0}
${field.title}
{/ms:arclist}