cms 开发过程
1、熟悉原型、看相同与不同部分。
2、创建一级栏目
3、首页布局,头部,尾部,中心内容区
4、栏目导航一级、二级获取:
[@cms_channel_list count='7']
[#list tag_list as a]
${a.name!}
[#list a.childAll?sort_by("sortNum") as b]
<a href="${b.url!}" style="font-size: 14px;color: black;display: block;">
[#if a.name != b.name]${b.name}[/#if]
</a>
[/#list]
[/#list]
[/@cms_channel_list]
栏目排序:[#list a.childAll?sort_by(“sortNum”) as b]
5、头部模块引入:[#include "../includes/header.html"]
6、栏目内容列表获取
[@cms_content_list channelId = '2301' channelOption='1' count="4" orderBy='29' siteId='1']
[#list tag_list as a]
<div class="swiper-slide" >
<a href="${a.url!}" style="height: 200px; width:200px; border: 1px solid green;">
<div class="image" style="background-image: url('${(a.attr.b_image.resUrl)!}');"></div>
<div class="text Regular"><h4>[@text_cut s=a.title len=20 append='...'/]</h4></div>
</a>
</div>
[/#list]
[/@cms_content_list]
内容标题长度截取:[@text_cut s=a.title len=20 append='...'/]
获取栏目的子栏目的内容:channelOption=‘1’
7、尾部
8、左侧栏目导航
[#list channel.parent.childAll as a]
[#if channel.parent.name != a.name ]
<li class="[#if a.name == channel.name] onShow [/#if]"><a href="${a.url}">${a.name}</a></li>
[/#if]
[/#list]
9、顶部面包屑
<span class="top-menu-detail">当前位置:
<a href="/sy1.jhtml">首页></a>
[#list channel.nodeList as n]
<a href='[#if "${n.url!}" ? contains("/")] ${n.url} [/#if]' target='_blank'>${n.name}</a>
[#if n_has_next] > [/#if]
[/#list]
</span>
10、栏目模板创建
引入头部[#include "../includes/header.html"]
、
底部、
左侧栏目导航[#include "../includes/leftColumn.html"]
、
顶部面包屑[#include "../includes/topColumn.html"]
[@cms_content_page count='20' pageNo='0' channelId =channel.id dateFormat='yyyy-MM-dd' titLen='34' append='...']
[#if (tag_pagination.totalElements > 0) ]
[#list tag_pagination.content as a]
<div class="item-title">
<a href="${a.url}" title="${a.title}">
<span class="circular"></span>
[@text_cut s=a.title len=titLen append=append/ ]
</a>
<span class="time">${a.releaseTime?string(dateFormat)}</span></div>
[/#list]
[#else]
<div style="padding: 30px; text-align: center;">暂无数据</div>
[/#if]
<!-- 分页 -->
[#if (tag_pagination.totalElements > 0) ]
<div class="page"> [@cms_pagination sysPage='1'/]</div>
[/#if]
[/@cms_content_page]
11、内容模板
内容标题: ${content.title!}
内容标题: ${content.title!}
发布时间:: ${content.releaseTime?string('yyyy-MM-dd')!}
来源: ${content.source.sourceName!}
浏览次数: ${content.views!}
正文: ${content.txt!}
问题:
1、栏目的图片怎么获取?
[@cms_channel id='2311']
[#if tag_bean??]
<img src="${tag_bean.iconUrl}" style="width: 100%;height: 140px;">
[/#if]
[/@cms_channel]
2、网站底部信息怎么通过栏目获取?自定义文本获取?
[@cms_channel id='2338']
[#if tag_bean??]
<table>
[#if tag_bean??]
[#list tag_bean.channelAttrs as attr]
[#if attr.attrName ='info'] <p><span>${attr.attrValue!} </span> </p>[/#if]
[#if attr.attrName ='address']<span>地址:${attr.attrValue!} </span>[/#if]
[#if attr.attrName ='email']<span>邮编:${attr.attrValue!} </span>[/#if]
[#if attr.attrName ='icp']<p><span>${attr.attrValue!} </span></p>[/#if]
[/#list]
[/#if]
</table>
[/#if]
[/@cms_channel]
3、获取栏目下的子栏目,不要孙子栏目怎么获取呢?
[#list channel.childAll?sort_by("sortNum") as a]
[#if a.deep ==1]
[#if channel.name != a.name ]
<li class="[#if a.name == channel.name] onShow [/#if]"><a href="${a.url}">${a.name}</a></li>
[/#if]
[/#if]
[/#list]
deep==1 判断只有子栏目,没有孙子栏目。deep 也可以等于2
4、如何获取摸一个栏目写的子栏目呢?
[@cms_channel_list parentId=‘2019’]
<div class="chile" [#if a.id == channel.id] style="display: block;background-color: #e5e6eb;"[/#if]>
[#list tag_list as b]
<div class="chile-item"><a href="${b.url}" [#if a.id==channel.id] class="onShow"[/#if]>${b.name!}</a></div>
[/#list]
</div>
[/@cms_channel_list]
5、多图上传怎么获取呢?
[@cms_content id='content.id' count='1' ]
<ul style="display: flex;flex-wrap: wrap;">
[#list content.attr.images.contentAttrRes as res]
<li style="margin-right: 20px;">
<img src="${res.resUrl}" alt="" style="height: 200px; width: 300px;">
</li>
[/#list]
</ul>
[/@cms_content]
6、css文件、js文件引入?
<link rel="stylesheet" href="${res}/fonts/iconfont.css">
7、内容详情里的 views总显示为0 ?
引入 front.js文件 加上下面代码
<script type="text/javascript">
$(function() {
Cms.viewCount("${base}", "${content.id}");
});
</script>
浏览次数:<span id="views"></span>