本站首页    管理页面    写新日志    退出


«September 2025»
123456
78910111213
14151617181920
21222324252627
282930


公告
 本博客在此声明所有文章均为转摘,只做资料收集使用。

我的分类(专题)

日志更新

最新评论

留言板

链接

Blog信息
blog名称:
日志总数:1304
评论数量:2242
留言数量:5
访问次数:7616010
建立时间:2006年5月29日




[Java Open Source]【转摘】Liferay Portal学习笔记(三):自定义页面布局Template
软件技术

lhwork 发表于 2006/8/10 10:08:38

       Liferay Portal 4.0 为我们提供了几种不同的页面布局,我们可以通过 Add Content 中的 Template 参数来指定不同的页面布局,但是,但我们利用 CMS 来定制文章内容的时候,仅有的几种页面布局并不能满足我们的需求,所以我们需要开发能够满足特定需求的页面布局。    我们将开发一个具有下图风格的页面布局,该布局中我们指定了7个区域来分别装配portlet实现独特的页面风格。500)this.width=500'>一、编写模板文件    我们将该页面风格名称定义为1_2_3_2 Columns,在Liferay/html/layouttpl/custom目录下新建1_2_3_2_columns.tpl文件,内容如下:500)this.width=500'><div id="layout-content-outer-decoration">500)this.width=500'><div id="layout-content-inner-decoration">500)this.width=500'>    <div id="layout-content-container">500)this.width=500'>      <table border="0" cellpadding="0" cellspacing="0" width="100%">500)this.width=500'>        <tr>500)this.width=500'>          <td colspan="3" valign="top">500)this.width=500'>            $processor.processColumn("column-1")500)this.width=500'>          </td>500)this.width=500'>        </tr>500)this.width=500'>        <tr>500)this.width=500'>          <td width="79%" valign="top">500)this.width=500'>              <table border="0" cellpadding="0" cellspacing="0" width="100%">500)this.width=500'>                <tr>500)this.width=500'>                <td width="26%" valign="top">500)this.width=500'>                  $processor.processColumn("column-2")500)this.width=500'>                </td>500)this.width=500'><td class="layout-column-spacer" width="1%">500)this.width=500'>                    <div>&nbsp;</div>500)this.width=500'>                  </td>500)this.width=500'>                <td width="26%" valign="top">500)this.width=500'>                  $processor.processColumn("column-3")500)this.width=500'>                </td>500)this.width=500'>                  <td class="layout-column-spacer" width="1%">500)this.width=500'>                    <div>&nbsp;</div>500)this.width=500'>                  </td>500)this.width=500'>                <td width="26%" valign="top">500)this.width=500'>                  $processor.processColumn("column-4")500)this.width=500'>                </td>500)this.width=500'>                </tr>500)this.width=500'>              </table>500)this.width=500'>            </td>500)this.width=500'>          <td class="layout-column-spacer" width="1%">500)this.width=500'>            <div>&nbsp;</div>500)this.width=500'>          </td>500)this.width=500'>          <td width="20%" rowspan="2" valign="top">500)this.width=500'>            $processor.processColumn("column-5")500)this.width=500'>          </td>500)this.width=500'>        </tr>500)this.width=500'>        <tr>500)this.width=500'>          <td colspan="2">500)this.width=500'>            <table border="0" cellpadding="0" cellspacing="0" width="100%">500)this.width=500'>              <tr>500)this.width=500'>                <td width="50%" valign="top">500)this.width=500'>                  $processor.processColumn("column-6")500)this.width=500'>                </td>500)this.width=500'>                <td width="50%" valign="top">500)this.width=500'>                  $processor.processColumn("column-7")500)this.width=500'>                </td>500)this.width=500'>              </tr>500)this.width=500'>            </table>500)this.width=500'>            </td>500)this.width=500'>        </tr>500)this.width=500'>      </table>500)this.width=500'>    </div>500)this.width=500'></div>500)this.width=500'></div>500)this.width=500'>     文件中前三行定义的 <div> 和最后三行 </div> 是固定的模板格式,从第四行开始就是我们需要定制的页面风格的 HTML 格式,我们需要将输出 portlet 区域的 HTML 语句用 $processor.processColumn("column-1") 来替换,“ column-1 ”是该区域的名称,并且每个区域的名字不能重复,这样系统在生成模板的时候会自动生成不同的区域来存放我们指定的 portlet 。二、编写属性文件     我们需要在 liferay-layout-templates.xml 文件中配置我们自定义的页面布局文件 1_2_3_2_columns.tpl ,为了和系统自带的布局文件区分开,我们创建扩展文件 liferay-layout-templates-ext.xml ,在该文件中指定我们的页面布局文件,当然也可以在 liferay-layout-templates.xml 文件直接增加定义。   liferay-layout-templates-ext.xml : 500)this.width=500'> <? xml version = " 1.0 " ?> 500)this.width=500'> <! DOCTYPE layout - templates PUBLIC  " -//Liferay//DTD Layout Templates 4.0.0//EN "   " http://www.liferay.com/dtd/liferay-layout-templates_4_0_0.dtd " > 500)this.width=500'> 500)this.width=500'> < layout - templates > 500)this.width=500'>     < custom > 500)this.width=500'>         < layout - template id = " 1_2_3_2_columns "  name = " 1-2-3-2 Columns " > 500)this.width=500'>             < template - path >/ html / layouttpl / custom / 1_2_3_2_columns.tpl </ template - path > 500)this.width=500'>         </ layout - template > 500)this.width=500'>     </ custom > 500)this.width=500'> </ layout - templates > 500)this.width=500'> 参数 id 定义该 template 的 ID 号, name 定义该 template 在 Add Content 中显示的名称, template-path 定义该 template 的路径名。 三、定制页面    定制好页面风格后,需要重新启动TOMCAT,登陆系统,进入GUEST频道,点击Add Content ,在Template中将会显示我们自定义的页面布局名称1-2-3-2 Columns,选择该Template,然后在页面中添加Journal Content,按照我们自定义的布局将portlet拖拉到合适的位置,再为每个Journal Content指定Article,最后就完成了各种风格页面的定制过程。使用这个的方法,我们可以定制各种满足不同需求的页面。


阅读全文(1835) | 回复(0) | 编辑 | 精华
 



发表评论:
昵称:
密码:
主页:
标题:
验证码:  (不区分大小写,请仔细填写,输错需重写评论内容!)



站点首页 | 联系我们 | 博客注册 | 博客登陆

Sponsored By W3CHINA
W3CHINA Blog 0.8 Processed in 0.062 second(s), page refreshed 144785189 times.
《全国人大常委会关于维护互联网安全的决定》  《计算机信息网络国际联网安全保护管理办法》
苏ICP备05006046号