# 08 开发和注册栏目


第一步:栏目模板开发 栏目模板是指栏目长的是什么样子,例如列表样子、棋盘样式、图片轮播样式等,一个栏目模板由4个文件组成:1个html文件、1个js文件、1个css文件和1个java文件,其中html文件必须遵循laytpl模板引擎语法,1个java文件必须实现com.seeyon.ctp.portal.section.templete. BaseSectionTemplete基类。 以目前系统中已有栏目模板横幅模板(bannerTemplete)为例,所包含的内容如下所示:

  • tpl-bannerTemplete.html
  • tpl-bannerTemplete.js
  • tpl-bannerTemplete.css
  • com.seeyon.ctp.portal.section.templete.BannerTemplete 在确定了栏目要显示哪些内容后,就可以按照上面的示例内容进行栏目模板的开发。 在安装目录文件webapps/seeyon/portal/config/portal_laytpl_template/sections.xml中注册该栏目模板,添加内容如下所示:

注:低版本portal_laytpl_template/sections.xml文件存放于ctp-portal工程,自V9.0SP1开始,文件存放于ctp-portal-xfront工程。

<?xml version="1.0" encoding="UTF-8"?>
<laytpls version="1.0" vendor="www.seeyon.com">
  <laytpl>
    <id><![CDATA[6288512492262214147]]></id>
    <code><![CDATA[tpl-bannerTemplete]]></code>
    <name><![CDATA[栏目模板-横幅]]></name>
    <htmlPath><![CDATA[/portal/sections/tpl/tpl-bannerTemplete.html]]></htmlPath>
    <jsPath><![CDATA[/portal/sections/tpl/tpl-bannerTemplete.js]]></jsPath>
    <cssPath><![CDATA[/portal/sections/tpl/tpl-bannerTemplete.css]]></cssPath>
  </laytpl>
</laytpls>

第二步:实现栏目后台java接口 PC和移动统一在同一个接口类com.seeyon.ctp.portal.section.BaseSection中定义,同时返回BaseSectionTemplete的栏目模板实例。具体定义如下:

  • PC接口
**public** **abstract** BaseSectionTemplete projection(Map<String, String> preference);
  • 移动接口
**public** **abstract** BaseSectionTemplete mProjection(Map<String, String> preference);

第三步:在spring.xml配置文件中注册栏目接口和配置栏目属性 以横幅栏目实现类BannerSection为例,在spring.xml配置文件中的配置信息如下图所示: 一、栏目可以配置的属性如下表所示: 1.一个栏目属性一般通过下面几个方面的信息进行描述清楚: 2.支持的栏目属性数据类型 支持的数据类型如下表所示:

  1. 一个具体栏目可以配置1到n个上述栏目属性。

注意:一个属性可以在PC端和移动端同时使用,也可以不同时使用,这个是通过在属性配置增加如下内容来配置区分:

  • defaultPC:表示PC端栏目属性;
  • m3mobile:表示移动端栏目属性;

二、栏目的分类和所属空间配置:

编撰人:chuhc、het