【9】了解淘宝sdk引入布局模块

上一节我们说了下淘宝提供给我们可布局的地方;

这一节我们说下淘宝sdk布局模块。

在我们开发网店的时候一般一个网店组成是:页面>框架>模块(>的意思的包含);这样我们就知道我们一般开发都集中在模块的开发和美化,特别是你买过淘宝上的板子,你就会发现,有的设计师会时不时的更新升级下模块,要不就是开发新模块出来。

所以我们开发网店也要学习下怎么开发模块,但是前提的你要先学会引用模块,一般引用有2种:

【1】引用系统模块-----方法如下:

1 <?php
2 
3     echo  include_system_module("shop.picRound","1.0-common",100); //这个是系统轮播模块
4 
5 ?>

参数说明:include_system_module需要三个参数,第一个为“系统模块简称”,第二个为“系统模块版本”,第三个为domId,这里需要注意的是domId需要在页面内唯一(和div中的id是一样的,一个页面中只能出现一次)

 

【2】引用自定义模块-----方法如下:

1 <?php
2            
3         echo  include_local_module("textbox",101);
4 
5 ?>

参数说明:include_local_module有两个参数,第一个”textbox”为模块的名称,第二个为domId,这里需要注意的是domId需要在页面内唯一。

 

学会了引用模块,那我们在学一个东西-----引入片区

那有人会问什么的片区???

片区是设计师在页面预留的一块区域,卖家可以在坑里添加模块,具体引入坑的语法如下:

<div id=" navigator"  class=" J_TRegion">

    <?php

     	$topList=array('shortname'=>'shop.topList','version'=>'1.0-common',domId=>001);

        $selfModule=array('id'=>'selfModule','domId'=>'001');

        $modules=array($topList, $selfModule);

               echo include_modules("testModules", $modules)

               echo include_system_module("shop.searchInShop","1.0-common",002)

   ?>

</div>

 参数说明:include_modules包含两个参数,第一个参数是片区对应的名称,第二个参数是片区里面引入的默认模块列表。

引入片区需要注意以下几点:

 1. 片区需要通过“J_TRegion”这个class来标识.

2. 片区里面也可以引入系统模块和引入自定义模块

好了,引用片区我们也学了,但是这里我也有些没有看懂

【1】“J_TRegion”外模块引用规范

【2】“J_Region内模块的引用支持单个模块和多个模块

这里的说明看的我糊涂了,要是有懂的,可以说说,有兴趣的也可以自己看看,网址:http://wiki.zx.taobao.com/index.php/模板编写规范

 

我们说也说了这么多,那我们就开始小小实战一下,在index.php页引用一下系统的轮播器(shop.picRound)用用,代码如下

<div class="layout grid-m">
     <div class="J_TRegion">
	     <?php
		     echo include_system_module("shop.picRound","1.0-common",001) 
	     ?>
     </div>
</div>

 这里有个重点就是申明片区要通过“J_TRegion”这个class来标识.,这个在上面我也讲到了,其他的也说到了,大家注意自己分析下。

写好了后,在控制台上找到自己新建的模板中的首页(index)预览下看看,是不是已经有一个轮播了。

 

模板中加入模块配置

设计师经常会遇到这样的问题:在模板挖了坑,但是没有办法控制坑中能够添加哪些模块。现在在SDK模板中加入了新的配置规则,允许设计师精确配置自己坑中所支持的模块。

示例配置如下:

View Code
 1 <?xml version="1.0" encoding="GBK"?>
 2 <site version="1">
 3     <id>9bb679384bb64c59be4f23ca37b6bcf7</id>
 4     <name>xiaohu</name>
 5     <author wangwang="" url="http://www.taobao.com"></author>
 6     <thumbnail>assets/images/frontpage.png</thumbnail>
 7     <language>php</language>
 8     <version>1.0.0</version>
 9     <apply-sites>3,7</apply-sites>
10     <change-notes>
11         change log
12     </change-notes>
13     <description>
14         description
15     </description>
16     <parameters>
17         <param name="demo" description="只读属性-1" readonly="true" ptype="text" formType="text" label="label">demo</param>
18         <param name="theme" description="主题风格" ptype="text" formType="text" label="label">green</param>
19     </parameters>
20     <global>
21         <header>header.php</header>
22         <footer>footer.php</footer>
23         <css>assets/stylesheets/global.css</css>
24     </global>
25     <styles default="gray">
26         <style>
27             <name>gray</name>
28             <thumbnail>/assets/images/frontpage.png</thumbnail>
29             <css>assets/stylesheets/gray.css</css>
30         </style>
31     </styles>
32     <rules>
33             <common>
34                 <support>
35                    <module shortname="shop.searchInShop" version="1.0-common"/>
36                    <module shortname="shop.topList" version="1.0-common"/>
37                    <module shortname="shop.friendLink" version="1.0-common"/>
38                 </support>
39             </common>
40 
41 
42             <header>
43                 <placeholder name="head-modules">
44                     <support>
45                         <module shortname="shop.itemCategory" version="1.0-common"/>
46                     </support>
47                 </placeholder>
48             </header>
49 
50 
51             <footer>
52                  <placeholder name="foot-modules">
53                     <support>
54                         <module shortname="shop.fileList" version="1.0-common"/>
55                         <module id="side_sales"/>
56                     </support>
57                 </placeholder>
58             </footer>
59     </rules>
60     <pages>
61         <page type="index">
62             <name>首页</name>
63             <file>index.php</file>
64             <thumbnail>assets/images/index.png</thumbnail>
65             <description>sjgjweogj</description>
66             <rules>
67                 <placeholder name="sub-modules">
68                     <support>
69                         <module shortname="shop.itemCategory" version="1.0-common"/>
70                         <module shortname="shop.fileList" version="1.0-common"/>
71                         <module id="side_help"/>
72                         <module id="side_sales"/>
73                     </support>
74                 </placeholder>
75             </rules>
76         </page>
77     </pages>
78 </site>

在site节点下的rules中配置通用的模块和头部尾部模块,

在page节点下的rules中配置具体页面下坑中支持的模块。

通用模块的配置不需要指定坑的名称,头,尾,页面中的模块配置需要指定到页面中的具体的坑名。

具体坑中支持哪些模块的计算方式是,通用配置集合与当前坑模块集合的并集。

模块配置支持系统模块和设计师自定义的模块两种模块类类型。

 

posted @ 2012-04-23 14:55  huige728  阅读(1972)  评论(6编辑  收藏  举报