jeecms使用记录

1、网址:http://www.jeecms.com/
2、使用
1、先在本地创建项目,完成静态页面并添加对应的js效果
2、将公用部分提取出来,方便不同页面调用
   引用方法: [#include "../includes/naheader.html"/]
   公用部分不需要html,body,head标签,只需要将代码与引用的css或js单独写就可以。
3、引用js插件,如jquery.min.js
   首先,在jeecms后台管理系统的文件中,选择default=>js,上传,将所需js文件上传到js文件夹中(或者自己新建的某个文件夹)
   然后,在html代码中引用
   <script type="text/javascript" src="${res}/js/najs/jquery.min.js"></script>
   我没有引用jeecms使用的轮播插件,我引用的swiper
   <script type="text/javascript" src="${res}/js/najs/swiper.min.js"></script>
4、引用css与img的方法类似,路径前缀为${res}
5、新建模板
   在jeecms后台管理系统中,选择模板管理,模板根目录中有两个文件夹,default和mobile,default是pc端,mobile是移动端
   我们现在只看pc端
   首页:在default文件夹中,有个index文件夹,该文件夹下的index.html为网站首页,用自己的首页html内容,替换已有内容;
   其他页面:如新闻页面。首先,在default=>channel文件夹中新增news.html,加入自己的代码,然后在jeecms后台管理的栏目管理中新增新闻栏目并加入子栏目,栏目pc端模板选择自己加上去的html模板;
   若要新增内容,在子栏目中的内容模板中选择相应的内容模型,在内容管理的对应模块下添加内容。
   注意:即使刷新,或者关闭窗口重新打开,否则,新增的模板或者栏目不显示
6、接口调用
   引入以下文件
   <script type="text/javascript" src="${res}/js/najs/jquery.min.js"></script>
   <script src="${res}/js/jquery.my-message.1.1.js"></script>
   <script src="${res}/js/app.js"></script>
   ——————————————————————————————————————————————————————————————————————————————————————————————————————
            api.GET('/content/page', {
                'page': page,
                'size': 12,
                'channelIds': 2319
            },function (result) {
              if (result.code == 200) { 
                  console.log(result)
                $("#zxlist").remove()
                  var cont = result.data.content;  
                    /* 分页 */
                    let idx = 1;
                    const count = result.data.totalElements;
                    const s = Math.ceil(count/12);
                    if (Math.ceil(count/12)<7) {
                        for(let j=1;j<8-s;j++) {
                            $(".pagination li:nth("+(8-j)+")").addClass("hideli");
                        }
                    }
                    $(".pagination li").click(function() {
                        const stype = $(this).attr("stype");
                        if (stype!='-2'&&stype!='-1') {
                            $('.pagination li a').removeClass('active');
                            $(this).children("a").addClass('active');
                            const cp = $(this).children("a").html();
                            getList(cp)
                        } else { 
                        if (stype=='-1'&&idx<=Math.ceil(count/12)-7) {
                                idx++;
                                for(let i=idx;i<(idx+7);i++) {
                                    $('.pagination li:nth('+(i-idx+1)+')').children("a").html(i);
                                    
                                }
                                getList($(".pagination li a[class='active']").html())
                            }
                            if (stype=='-2'&&idx>=1) {       
                                for(let i=idx;i<(idx+7);i++) {
                                    $('.pagination li:nth('+(i-idx+1)+')').children("a").html(i);
                                }
                                getList($(".pagination li a[class='active']").html())
                                idx--;  
                            }
                        }
                    })
                    /* 分页 */
                  var $text = '<div class="fwct1-list" id="zxlist">'
                    for(var i = 0; i < cont.length; i++){
                      $text += `<div class="list-item">
                                 <div class="list-item-top">
                                     <img src="`+cont[i].iconUrl+`"/>
                                </div>
                                <div class="list-item-ct">
                                    <h3>`+cont[i].title+`</h3>
                                    <p>`+cont[i].description+`</p>
                                    <p class="more">
                                        <a href="`+cont[i].url+`" target="_blank">探索详情 MORE ——→</a>
                                    </p>
                                </div>
                            </div>`;
                       
                    }   
                    $text += ` </div>`
                      $('.my-zixun').append($text);
                        if(!result.data.content){
                          $("#page").css('display','none')
                          $empty ='<p class="empty">当前暂无数据</p>'
                          $('.my-zixun').append($empty);
                        }
              }
            })
7、JEECMS V3.0(http://www.jeecms.com/bqsy/224.htm)
   
   
3、JEECMS V3.0部分使用说明(224-242)
1、根据栏目路径、ID调用栏目名及链接:
   [@cms_channel path='news'] <a href='${tag_bean.url}'>${tag_bean.name}</a> [/@cms_channel]
   [@cms_channel id='5']<a href='${tag_bean.url}'> ${tag_bean.name} </a>[/@cms_channel]
2、栏目列表标签:
   [@cms_channel_list ]
    [#list tag_list as c]
        <a href="${c.url}">${c.name}</a>
    [/#list]
   [/@cms_channel_list]
3、子栏目列表
    [@cms_channel_list parentId=channel.id count='10' tpl='1' tplSub='my']
      [#list tag_list as c]
        <a href="${c.url}">${c.name}</a>
      [/#list]
    [/@cms_channel_list]
    【parentId】   父栏目ID。存在时,获取该栏目的子栏目,不存在时获取顶级栏目。
    【 siteId 】   站点ID。存在时,获取该站点顶级栏目,不存在时获取当前站点顶级栏目。(仅在parentId不存在时起作用)
    【hasContent】 是否有内容。默认所有,否则只获取有内容的栏目
    【tplSub】 自定义栏目模板后缀
4、文章列表(com.jeecms.cms.action.directive.ContentAbstractDirective):
  [@cms_content_list tpl='2' styleList='1-1' lineHeight='2' bottomLine='1' headMark='3' dateFormat='MM-dd' datePosition='2' titLen='10' append='…' count='5' channelId='1' channelOption='1'/]
   [@cms_content_list count='5' channelId='1' channelOption='1']
     [#list tag_list as a]
       ${a.type.name}<a href="${a.url}">${a.title}</a>
     [/#list]
   [/@cms_content_list]

   【tpl】 标签公用属性,可选值有:
             0--调用内嵌标签样式;
             1--调用用户自定义标签样式;
             2--调用系统预定义标签样式;
             3--调用用户预定义标签样式。

   【lineHeight】 行高;【行高】
   【headMarkImg】 列表头图片;【图片地址】
   【headMark】 列表头编号;【1:小黑点;2:小红点;3:单箭头;4:双箭头】
   【bottomLine】 下划线;【0:无;1:有】不能为空。
   【dateFormat】 日期格式;【java日期格式,如:yyyy-MM-dd】
   【datePosition】 日期位置;【1:后面左边;2:后面右边;3:前面】不能为空
   【ctgForm】 类别;【0:无;1:栏目;2:站点】不能为空
   【showTitleStyle】显示标题样式;【0:不显示;1:显示】不能为空
   【useShortTitle】 是否使用简短标题;【0:不使用;1:使用】不能为空
   【titLen】 标题长度;【英文字母按半个计算】为空则不截断
   【target】 是否新窗口打开;【0:原窗口;1:新窗口】不能为空

5、字符串长度截断标签
   [@text_cut s=title len=titLen append=append/]
   【s】    需要截断的字符串,tit为字符串对象
   【len】  目标长度,titLen可以是其它标签中传递过来的参数
   【append】 截断后显示的字符,append可以是其它标签中传递过来的参数

6、最上级栏目标签
   ${channel.nodeList[0].name}

7、栏目节点列表标签(用于获取页面导航路径)
   [#list channel.nodeList as n] ${n.name}<br/>[/#list]

8、栏目列表标签
   作 用:显示各栏目列表
   参 数:
  parentId:存在时,获取该栏目的子栏目,不存在时,获取顶级栏目
   siteId:站点ID。存在时,获取该站点顶级栏目,不存在时获取当前站点顶级栏目。(仅在parentId不存在时起作用)
  hasContent:是否只获取可以有内容的栏目。【0:获取所有;1:只获取可以有内容的栏目】(默认0)
  linkClass:链接class
  style:标签内部样式。如果指定sysContent或userContent,则该项无效。【1:普通链接列表;】(默认1)
  sysTpl:使用系统模板。【0:不使用;1:使用】(默认1)
  sysContent:系统内容样式。(默认0)
  userContent:自定义内容样式。如果指定了系统内容样式,则该项无效。(默认0)
  sysPage:系统分页样式。【0:不分页;1:样式一;2:样式二】(默认0)
  userPage:自定义分页样式。如果指定了系统分页样式,则该项无效。【0:不分页;1:样式一;2:样式二】(默认0)
  custom:字符串数组。用于个性化处理。(默认空数组)
 【备 注】:在代码模式下编辑,各属性值必须使用单引号,属性排列顺序不分先后。
   示例:
   [@cms_channel_list tpl='1'/]
9、根据id获取详情
   api.GET('/content/' + id,{}, function(result) {
       console.log(result);
       content = result.data
   })
   在详情页调用页面内容直接使用${content.title}

posted on 2020-07-09 09:46  奇迹般若果  阅读(641)  评论(0编辑  收藏  举报