JavaShop模板制作手册_第1页
JavaShop模板制作手册_第2页
JavaShop模板制作手册_第3页
JavaShop模板制作手册_第4页
JavaShop模板制作手册_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、-. z.JavaShop模板制作手册Version: 1.0Public date: 2010-06-21All right reservedJavamall. Javashop模板解析机制Javashop页面的显示由Javashop模板引擎解析,模板解析机制包含两个局部:请求URL-模板文件应射和模板解析显示。 URL-模板文件映射每一次页面显示都会对应一次请求,一个请求就会对应一个URL,如:/test.html,则我们的模板解析就由这个URL开场,这个URL可能会对应我们的一个模板文件,如:test.html,首先我们要建立这种URL和模板文件的对应关系(也就是建立了一个HTTP请求和

2、模板文件的对应关系),也可以称为URL-模板文件应射,通过如下步骤建立URL-模板文件应射:首先用开发者角色什么是开发者角色?登录后台:此处程序上还差开发者角色定义和操作体验完善点击新增按钮:点击保存新增一条记录,这样我们便完成了一个URL-模板文件的映射。模板文件首先我们要确认我们当前模板所在的目录,登录后台,点击页面设置-主题管理-前台主题:由上图圈红局部可以看出当前模板目录为default,即/themes/default (/代表Javashop部署到web效劳器的根目录),我们在此目录中建立一个模板文件,名为test.html,并键入hello world!,起动web容器如tomc

3、at,访问ip:端口号/虚拟目录/test.html,效果如下列图:模板解析引擎根据localhost:8081/test.html,找到当前模板/themes/default/test.html,并显示出此文件的容。挂件使用说明widgets.*ml配置经过上述章节的讲解,我们学习到如何显示一个模板的容,将下来我们将了解到如何展示网店的数据,如商品、商品分类等,展示这些数据需要借助挂件。我们将一个页面划分为一块块的挂件区域,如下列图所示:挂件的作用就是在模板的相应位置输出一段HTML,这样,Javashop的一个页面就是由多个挂件HTML片段组合而成的。接下来我们具体讲解如何使用一个挂件,首

4、先我们在widgets.*ml中定义在一模板文件中要含有哪些挂件,widgets.*ml位于当前模板根目录下,如:/themes/default/widgets.*ml,如果不存在需要手工建立一个。我们以商品列表挂件为例来讲解,商品列表挂件的作用是输入我们指定的几个商品信息,如下列图所示:他的挂件ID是goods_list,假设在我们的test.html中只有这一个挂件,则widgets.*ml中的配置为: goods_listcatid:1type:default上述挂件配置中type必须指定为挂件的ID其它参数和具体的挂件相关,可参考商品列表挂件。接下来在模板文件test.html中输入$

5、widget_cat1_goods其中标红的局部为在widgets.*ml中定义的挂件id,重新访问test.html,效果图如下:自定义挂件页面上图容为挂件默认的HTML构造,因为没有使用样式看起来比拟丑陋,下面我们介绍如何自定义这个挂件的HTML构造,通过指定挂件的 custom_page和folder 参数我们可以让挂件输入自定义的HTML,如: goods_listcatid:1type:defaultcat1_goods指定挂件页面名称,扩展名默认为.htmlwidget_html 指定挂件页面所在目录 这样我们必须建立/themes/default/widget_html目录,并在

6、目录中建立cat1_goods.html文件,并在文件中键入:这是自定义挂件的容,重新访问test.html,效果如下:如果出现乱码,请确认建立的挂件页面文件格式是否为UTF-8。使用挂件变量上述章节的讲解,我们可以实现自定义挂件的HTML,接下来我们通过挂件变量来输出的商品、分类等网店数据。每个挂件能够输出什么数据、使用哪些变量都是相关挂件定义的,需要参考相应的挂件说明.挂件页面使用Freemark解析的,所以使用Freemarker语法。商品列表挂件可以使用的变量是名为goodsList的商品列表变量,此列表中每一行是一个商品数据,详细请参考商品列表挂件说明,我们可以通过如下的代码来循环输

7、出商品信息:名称:$-价格:$goods.price重新访问/test.html效果图下:模板制作指南模板目录规在开场制作之前,先来了解下JavaShop的模板路径和构成模板的文件。模板路径是JavaShop安装目录/themes/进入到*一套模板目录中后,就可以看到该模板的目录和文件构造了:可重用局部,文件夹中存放着模板各页面的公用局部,扩展名为html,一般是模板的头部和尾部,这两个局部在整个站点中都是一样的,支持freemarker语法边框目录,扩展名为html,存放着边框文件,边框是版块的呈现样式,相当于版块的模板,支持freemarker语法images目录,存放所有图片文件、css

8、文件等*.html,框架文件,扩展名为html,决定了页面的布局和版块可摆放的区域,是页面的骨架preview.jpg ,模板预览widgets.*ml是整个模板中最重要的局部,所有模板的配置信息都是存在这个*ml中的,包括板块的位置、配置信息,边框的信息等等。划分页面构造,建立框架首页对于一个来说比拟复杂,页的话相对简单,页都可以用一个框架default.html来表示。以首页为例,如图,这是一做好了的psd页面,现在我们要把它制作成模板。这个过程其实和一般页面的制作过程是一样的。先将页面做大致的划分,搭建框架,剩下的局部通过配置widges.*ml来完成。我们将页面划分如下:页面的头部和尾

9、部都是公用的,所以将它们别离出去,作为独立的html引用到各个框架页面中。以上面这个模板来说,页面中部布局分为左中右三栏,各栏部是一些小的功能板块,这些板块的容和功能是预置的,通过编辑widgets.*ml来配置。也就是说,JavaShop模板的制作实际上较少涉及这些功能板块的容,更多关心的是框架和边框的表现样式。实际制作过程中我们可以将这板块容以低保真的形式,如图片或文字占位,留待以后细调。建立框架,划分板块区首页框架对应的是inde*.html,代码的写法和平常的html文件是一样的。框架同时也支持freemarker语法。如上图的inde*.html源码是:$widget_1!$widg

10、et_2!$widget_3!$widget_4!代码中可以看到,框架的源码很简单,只做布局,头尾都做独立的html引用。其他页面的框架除了首页外,其他页面都可以用默认框架default.html,默认框架输出业务区,承当所有业务流程的功能,也就是说只要一个默认框架default.html就能表示所有功能页,进入不同的功能页时,业务区输出不同的预置容。业务区在html代码中的写法是$widget_main,default.html必须有这个标签,参见【HYPERLINK l _挂件配置说明挂件配置说明】。当然*个功能页也能新建一个框架,框架文件名是系统预置好的,与*个功能页面相对应,只要新建出

11、来一个框架,就自动应用在这个页面上,不同的框架可以带来不同的布局和板块配置。会员中心和购物车页面需要更大的宽度,因此他们的框架一般与默认框架不同,因此模板一般需要4个框架页,首页inde*.html、默认页defaut.html、会员中心页member.html、购物车cart.html。制作边框资源框架和板块区建立完成之后,就可以在后台可视编辑配置板块了。但在这之前还需要将各个边框做好。边框是包裹板块的一段html代码,定义了板块的风格,选用不同的边框能改变板块的风格。如下列图,一个文章板块的边框:边框文件位于borders目录下,和框架一样也是html文件,也支持freemarker语法。

12、边框的标签有如下几个:$title,标题,可在widgets.*ml中配置$body,板块容输出的局部$widgetid 挂件id,在widgets.*ml中配置边框代码的例子:$title$body这段代码的图示:上面这段代码中有几点可以注意下,border1,一套模板会有多个边框,不同的边框用不同的css来定义。一般一个边框是由头中尾三局部组成的,所以构造上也是如此表达。如果边框有复杂布局,需要多个板块来实现,则这时就需要把最外层的容样式写在框架页中,层的板块再用另外的边框。配置挂件参数,细调板块部样式框架页,边框的资源完成后,余下的制作就是在widgets.*ml中编辑配置挂件。板块的h

13、tml容是预置的,现有挂件的种类和使用可以参考【HYPERLINK l _挂件详细说明挂件详细说明】章节。常用的板块有商品、商品分类、文章、搜索、广告、菜单等等,通过对这些板块的灵活应用,可以满足一个在线购物的根本功能。模板制作需要制作者们对软件置的板块有一个大致的了解。板块的html构造可以通过原有模板中存在的模板,用firefo*浏览器的firebug插件查看,如图:挂件配置说明 widgets.*mlwidgets.*ml由多个page结点和其子结点widget结点构成,描述了每个页面的挂件配置情况,如:visible商品分类border3goods_cat其它挂件的定义。其它页面的定义

14、。page结点说明widgets.*ml中可以有多个page结点,分别对应模板中的框架文件。page结点有一个唯一的属性是id,以/开头,和模板目录中的框架页面名称对应。page结点中有两个page较为特殊:id分别为mon和id为/default.html其中id为mon的结点中配置的挂件在每个页面中都可以使用,一般用于header和footerid为/default.html的page结点,一些页面布局一样功能模块都使用default.html这个框架页,此结点中的widget子结点id功能模块的url,在一般的网店中不需要修改这个结点的配置。参见【HYPERLINK l _/defaul

15、t.html结点默认配置附录/default.html】结点配置。widget结点说明例如:articlecatvisibleborder3新闻中心2widget结点参数说明属性/结点说明必须id 属性一般为数字,和框架页面中的$widget_id对应必须type子节点对应挂件类id,参见【HYPERLINK l _挂件详细说明挂件详细说明】必须border子节点指定挂件使用的边框,对应边框文件的名称不带.html,不指定边框指定为none,参见【HYPERLINK l _制作边框资源建立边框资源】。必须bordertitle子节点定义边框的标标题,即输出在边框文件中的$title变量当指定边

16、框时为必须custom_page自定义挂件页面路径如:articlelist则会显示当前模板根下的articlelist.html的容,在这个html中可以使用freemarker语法,其中可以使用的数据视不同的挂件而定。非必须folder自定义挂件页面所在路径,如果不填则为当前模板所在文件夹v新增非必须其它结点根据不同挂件有不同定义,【HYPERLINK l _挂件详细说明挂件详细说明】。挂件详细说明文本区域挂件显示*篇文章的详细挂件idpartZone参数:参数说明article_id文章的id图片挂件根据路径显示图片挂件idimageWidget参数:参数说明src图片的路径,以当前模板

17、为根的相对路径菜单挂件挂件idshop_menu,menu(推荐使用)参数参数说明isDropDownon:显示下拉效果off:不显示下拉效果默认为off例如shop_menunoneon效果头挂件挂件idheader说明header挂件负责间的信息输出,如title,keywords等,这些信息可在后台,我的站点中进展设置。参数:无留言板挂件挂件idguestbook参数:参数说明是否必须pagesize分页大小默认为10否message留言成功提示信息默认为:留言成功,稍候我们会对您的留言回复。否adminname管理员名称默认为管理员将显示在列表的 *回复否例如guestbook律师自定

18、义页面提供的数据主题列表变量:subject属性说明title标题content留言容username用户名se*性别,0女1男addtime留言时间emailtelarea地区replyList回复列表,包含content属性和addtime属性留言输入表单说明字段说明title标题content留言容username用户名se*性别,0女1男emailtel注:请参见: /eop/enation/app/base/widget/guestbook/GuestBookWidget.html商品列表挂件挂件idgoods_list参数:参数说明setting挂件具体参数json串。参见【HYP

19、ERLINK l _Setting_JSON字串参数:setting json字串】term商品筛选条件当setting.type=default时此结点生效参见【HYPERLINK l _Term_JSONterm json字串参数】tabs当setting.type=morediv时此结点生效参见【HYPERLINK l _Tab_tab json数组字口中参数】Setting JSON字串参数:参数说明type可选值:default或morediv多层选项卡式默认值: defaultshowGoodsDesc; 是否显示商品描述,可选值:on:显示off:不显示默认值:onshowGoo

20、dsImg; 是否显示商品图片,可选值:on:显示off:不显示默认值:onshowGoodsName ; 是否显示商品名称,可选值:on:显示off:不显示默认值:ongoodsImgPosition; 商品图片位置,可选值:top,bottom,left,right,center默认值:topgoodsNum 显示商品数默认值:10columnnum; 显示列数默认值:4thumbnail_pic_width;商品图片缩略图宽如果未指定此参数,将使用系统设置中商品中缩略图的设置thumbnail_pic_height; 商品图片缩略图高如果未指定此参数,将使用系统设置中商品中缩略图的设置

21、showTitleImg; 是否显示分类图片,可选值:on:显示off:不显示默认值:offshowTitle; 是否显示分类描述,可选值:on:显示off:不显示默认值:offtitleImgHref; 分类图片连接titleImgSrc; 分类图片地址titleImgPosition; 分类图片位置,可选值:top,bottom,left,right,center默认值:left titleImgAlt; 分类图片提示titleDesc 分类描述titleImgWidth 分类图片宽,支持100p* 和80% 的方式默认值:100% changeEffect; tab事件方式,可选值:0:

22、mouseover1:click默认值:1Term JSON 字串参数参数说明tagid; 商品标签id串,,号分隔,如:tagid:1,2,3catid; 商品分类id串,,号分隔,如:catid:1,2,3brandid; 品牌id串,,号分隔,如:brandid:1,2,3typeid; 类型值,如:typeid:1minprice;最大价格ma*price; 最小价格keyword; 关键字order;排序方式:0默认1按发布时间新到旧2按发布时间旧到新3按价格从高到低4按价格从低到高5访问次数7周购置次数Tab Json数组字串参数参数说明title 选项卡标题term此选项卡商品列

23、表的筛选条件,参见 Term JSON 参数例如例如一:简单列表:需求:类别1,2的热卖商品列表,图片在中间效果配置:visible热卖商品border1goods_listtagid:1,catid:1,2type:default,goodsImgPosition:center例如二:多层选项卡式效果配置visible打折促销border3goods_listtitle:长裙,term:catid:2,title:美丽女裤,term:catid:3type:morediv,columnnum:4,goodsNum:10,goodsImgPosition:top,changeEffect:1商

24、品分类挂件挂件idgoods_cat参数:参数说明showimgon:显示类别图片off:不显示类别图片默认为off例如商品分类border5goods_cat效果商品详细挂件挂件idgoods_detail说明商品详细挂件是由一些挂件共同组成的,如下列图所示:默认的组合挂件列表:goods_gallery商品相册goods_props商品属性goods_spec商品规格goods_adjunct商品配件goods_intro商品详细描述goods_ple*相关商品goods_params商品详细参数goods_ask商品咨询goods_discuss商品评论商品挂件展示效果如上图所示,一般很

25、少有对这个效果做大的改动,如果有的话您需要通地指定custom_page属性参见【HYPERLINK l _widget结点说明挂件配置说明-widget结点说明】来指定为您的新页面如goods.html,然后在个goods.html中您可以照常使用上述组合挂件中提供的数据。具体参见挂件实现,下表给出了商品详细挂件相关的实现类:goods_gallery.gallery.GoodsGalleryWidgetgoods_props.GoodsPropsWidgetgoods_specgoods_adjunct.adjunct.GoodsAdjunctWidgetgoods_intro.Goods

26、IntroWidgetgoods_ple*goods_params.GoodsParamsWidget品牌列表挂件说明显示后台定义的品牌挂件idbrand_list参数无品牌详细挂件显示*品牌的详细挂件idbrand_detail参数:无注:此挂件根据brand-数字.html来确定品牌的详细,如brand-1.html,则显示id为1的品牌详细。文章列表挂件挂件idarticleList参数参数说明必须showcount限定显示的文章条数,默认为20否cat_id文章分类id是showdate是否显示时间,默认为显示1显示0为不显示否showpage是否显示分页,默认为显示1显示0不显示否u

27、rlname自义文章列表前缀默认:article-文章分类挂件挂件idarticlecat参数参数说明必须cat_id文章分类id指定显示分类的父id,为0则显示全部是文章详细挂件挂件idshop_article说明文章详细挂件根据访问的网址来确定文章容,如:article-1.html,则会显示文章为id为1的文章容,article-2.html会显示id为2的文章容。参数无广告挂件说明广告挂件的形式是多种多样的,但其参数根本一至,只有一个acid:参数说明必须acid广告位id是广告的数据在后台维护:广告位及广告管理。不同的广告展现形式对应不同的挂件id,下面进展详细介绍:注:标题即为挂件

28、idflashAdv可自动轮换当前广告位的广告,鼠标移动至右下角的数字上可手动选择广告。jqueryAdAdvance可自动轮换当前广告位的广告,鼠标移动至下方的说明可手动选择广告。ad每个用户访问时会随机展示此广告位的一个广告。你可以能过自定义挂件来实现其它的广告展现形式,参见:【HYPERLINK l _自定义广告挂件自定义广告挂件】评论挂件评论挂件分为留言板、商品评论、商品咨询、和文章评论,挂件id见下表:留言板shop_guestbook商品评论goods_discuss商品咨询goods_ask文章评论article_ments评论挂件不需要设置参数,相应参数在后台【设置-评论设置】

29、中设定。友情连接挂件显示友情连接列表挂件idfriends_link参数无购物车导航条挂件idmember_cart_bar参数无效果会员登录导航条挂件idmember_login_bar效果登录前登录后搜索条挂件idsearchBar效果导航挂件id:site_nav效果:会员中心挂件会员中心挂件是一组较特殊的挂件,它们实现了会员中心如我的订单、我的资料等功能,这些功能一般不需要修改,只需按如下配置在widgets.*ml中即可:visiblemember_main如需修改请参见【HYPERLINK l _自定义会员中心挂件自定义会员中心挂件】。CMS相关挂件说明:CMS相关挂件是以模型为核

30、心的一系列挂件,需要首先在后台定义模型。另外,因为模型的字段是动态的,所以CMS相关挂件全部需要custom_page参数,用户在自定义页面中指定要输出的字段名。静态数据列表挂件挂件idstaticDataList说明通过指定类别id参数来显示*类别下的文章列表。参数参数说明必须catid文章分类id是count文章数,默认10否custom_page挂件页面是folder挂件页面所在文件夹,如果不指定则为当前模板所在文件夹否term连接自定义查询条件,如:and field1=1 and field2=3否挂件页面变量变量说明dataList数据分类列表,循环时用字段名输出容默认字段名id:

31、数据idcat_id:数据分类idadd_time添加时间例如Widgets.*mlstaticDataList104testtest挂件页面$ s动态数据列表挂件挂件iddynamicDataList说明通过地址栏的参数来显示*类别下的分页文章列表,地址栏规则:/-.html其中pagename需要和themuri相对应,参见HYPERLINK l _url映射规则uri映射规则参数参数说明必须pagesize每页文章数,默认20否custom_page挂件页面是folder挂件页面所在文件夹,如果不指定则为当前模板所在文件夹否term连接自定义查询条件,如:and field1=1 and

32、 field2=3否挂件页面变量变量说明dataList数据分类列表,循环时用字段名输出容默认字段名id:数据idcat_id:数据分类idadd_time添加时间pager分页html片段navbar导航条html片断,输出类似如下的html:首页 要闻 注意导航的连接由文章分类的页面地址属性决定,可在后台更改例如Widgets.*mldynamicDataListlisttest3挂件页面$navbar$ $pager静态数据详细挂件挂件idstaticDataDetail说明通过指定文章id显示文章容。参数参数说明必须catid文章所在分类id是id文章分类id是custom_page挂

33、件页面是folder挂件页面所在文件夹,如果不指定则为当前模板所在文件夹否挂件页面变量变量说明data数据集合,显示时用data.字段名输出容默认字段名id:数据idcat_id:数据分类idadd_time添加时间例如Widgets.*mlstaticDataDetail42detailtest挂件页面$data.se*$data.add_time动态数据详细挂件挂件iddynamicDataDetail说明通过指定地址栏参数显示文章详细,地址栏需要传传递文章id和文章分类id两个参数,规则如下:/-.html其中pagename需要和themuri相对应,参见HYPERLINK l _ur

34、l映射规则uri映射规则参数参数说明必须custom_page挂件页面是folder挂件页面所在文件夹,如果不指定则为当前模板所在文件夹否showne*t是否显示上一篇、下一篇可选择值:yes 或no如果值为 yes ,则挂件页面变量可以使用ne*tid和pevid,分别为下一篇文章的id和上一篇文章的id,如果是第一篇或最后一篇,ne*tid或pevid值为0,详细参见否挂件页面变量变量说明data数据集合,显示时用data.字段名输出容默认字段名id:数据idcat_id:数据分类idadd_time添加时间navbar导航条html片断,输出类似如下的html:首页 要闻 注意导航的连接

35、由文章分类的页面地址属性决定,可在后台更改ne*tid下一篇文章id,如无下一篇则值为0仅当showne*t=yes时有效pevid上一篇文章id,如无上一篇则值为0仅当showne*t=yes时有效附件字段变量.name 和 .path分别对应附件的名称和路径仅对模型中存在附件字段时有效使用例如:下载:$多图片上传字段变量为一个数组,数组的容为图片路径,使用例如:仅对模型中存在多图片上传字段时有效使用例如:图片:标题:$photo.title!视频字段使用例如:$data.video.playerHtmlvideo为字段名另外有如下视频属性可供页面使用:video.titlevideo.pa

36、thvideo.imgvideo.widthvideo.heightvideo.autoplay例如Widgets.*mldynamicDataDetaildetailtest挂件页面$navbar$data.se*$data.add_time注:导航html中不包含本条数据的导航数据,如要显示需要手工参加,如上述红色代码所示。数据表单挂件挂件iddataForm说明文章表单挂件可用于在前台输出一个文章录入表单,此表单必须针对*模型,所以必须指定模型id。文章分类参数参数说明必须modelid模型id是catid文章类别id是formpage表单页面名称是folder表单页面所在文件夹,如果不

37、指定则为当前模板所在文件夹否例如Widgets.*mlarticleFormrenwutest21表单页面例如::$name_input性别:$se*_inputremark:$remark_input如上代码所示,通过$字段名_input来输出相应的字段项,字段名要和在后台定义的模型字段名相对应,也可直接写html代码,但要确保控件名的name和字段名相对应。另外,提交按钮的button的class必须指定为submit。数据分类树挂件挂件iddataCatTree说明用于输出数据类别树。注:分类挂件不是必须提供custom_page。参数参数说明必须catid类别id,如果不指定则输出所有

38、分类否url类别名称上的连接url前缀,默认为data否例如dataCatTree0renWuList数据搜索表单挂件挂件iddataSearchForm说明数据搜索表单挂件可用于在前台输出一个数据搜索表单,此表单必须针对*模型,所以必须指定模型id。参数参数说明必须modelid模型id是formpage表单页面名称是folder表单页面所在文件夹,如果不指定则为当前模板所在文件夹否例如Widgets.*ml3dataSearchFormyaoshis表单页面例如:名字$name_input性别$se*_input职务$zhiwu_input如上代码所示,通过$字段名_input来输出相应的

39、字段项,字段名要和在后台定义的模型字段名相对应,也可直接写html代码,但要确保控件名的name和字段名相对应。Form的action可自定义为符合themeuri规则的地址,此action对应的为搜索结果页面,对【应数据搜索结果挂件】。对于日期项搜索的特殊说明支持日期项的条件查询,搜索表单中相应字段项的name应为:开场时间:字段名称_start完毕时间:字段名称_end如,假设日期字段项的name为add_date,则形成的参数应为如下格式:add_date_start=2010-08-01&add_date_end=2010-09-05数据搜索结果挂件挂件iddataSearchResu

40、lt说明用于显示针对*模型的搜索结果参数参数说明必须modelid模型id是pager是否进展分页查询on是 (默认)off否否pagesize每页文章数,默认20否custom_page挂件页面是folder挂件页面所在文件夹,如果不指定则为当前模板所在文件夹否挂件页面变量变量说明dataList数据分类列表,循环时用字段名输出容默认字段名id:数据idcat_id:数据分类idadd_time添加时间pager分页html片段例如Widgets.*ml3dataSearchResultresults2挂件页面$ $pagerSql列表挂件挂件idsql_list说明通过指定sql来查询数据

41、,并通过自定义页面来展现数据参数参数说明必须sql查询的sql,表名需要用#tablename#的形式,如:select * from #goods# where cat_id=1是custom_page挂件页面是folder挂件页面所在文件夹,如果不指定则为当前模板所在文件夹否挂件页面变量变量说明dataList数据列表,循环时用字段名输出容例如Widgets.*mlsql_listselect * from #goods# where cat_id=6glist挂件页面$其它挂件Javashop中还有一些挂件,它们实现了复杂的业务逻辑,但一般模板的制作者并不太需要关心,它们一般都声明在/d

42、efault.hml中参见【HYPERLINK l _page结点说明page结点说明】,下面列出他们的名称及id:购物车及结算、支付挂件cart商品搜索goods_search高级搜索输入search商品比照goods_pare赠品gift_list捆绑促销package密码找回findpassword自定义挂件规则JavaShop的挂件最少要包含两局部:一个挂件类和一个html的挂件页面如:JavaShop挂件是基于EOP(易族智汇开放平台)的模板-挂件机制来运行的,因此JavaShop的挂件要符合一些规则:挂件类继承于.enation.eop.sdk.widget.AbstractWid

43、get ,并实现方法protectedvoid e*ecute(Map params)注:其中的config方法,为预留可视化设置的接口,将在一下版本中得到实现在spring的Application.*ml中声明挂件的bean定义,在widgets.*ml中将会通过这个bean的id来使用挂件,参见【HYPERLINK l _挂件配置说明挂件配置说明】开发一个简单的挂件创立你的挂件类新建挂件类:.enation.eop.demo.widget.Te*tWidget,使此类继承:并键入如下代码:代码例如publicclassTe*tWidgete*tends AbstractWidget /*

44、* 在一下版本中,当挂件设置对话框显示时会调用此方法 */Overrideprotectedvoid config(Map params) /* * 当挂件执行时会调用此方法 */Overrideprotectedvoide*ecute(Map params) /读取挂件的参数并设置给挂件页面String te*t = params.get(te*t);this.putData(te*t, te*t);创立挂件页面挂件相关页面采用freemarker模板引擎,请参照相关文档。挂件页面在Te*tWidget类的所在包中建立名为:类名.html的挂件显示文件Te*tWidget.html:代码例如

45、您输入的是$te*t配置挂件spring bean代码例如在模板中使用挂件:在相应模板中像如下代码使用挂件:te*tWidget测试文字noneAbstractWidget 说明参数EOP会为挂件提一些必要的参数,并能过e*ecute和config方法的params参数传递key说明id在本页面中挂件的唯一idtype挂件的bean id常用方法说明void putData(String key, Object value)设置页面变量void setPageName(String pageName)设置模板文件的名称void setPageE*t(String pageE*t)设置页面扩展名

46、void setPageFolder(String pageFolder)设置页面所在文件夹,指定的是servletConte*t的相对路径,如:setPageFolder(/debug/)则指定为虚拟目录根下的/debug目录为挂件页面的存储文件夹。自定义广告挂件规则:挂件类必须继承自并覆写下面的方法protectedvoid e*ecute(AdColumn adColumn, List advList)参数说明:【AdColumn adColumn】:当前广告位对象参见:【List advList】:此广告位的广告对象集合。参见:自定义会员中心挂件会员中心是一组会员相关功能的挂件,如我的订单、个人信息、收货地址管理等,在【HYPERLINK l _默认url映射附录-默认url映射】可见,会员中心的映射规则为:/m

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论