文档章节

Liferay 6.1开发学习(八):主题开发

攻城狮不是猫
 攻城狮不是猫
发布于 2015/07/02 09:16
字数 768
阅读 67
收藏 0

Liferay主题的创建

1、在Eclipse的工具条上,点击New Liferay Project,在plugin type里面选择Theme,点击finish。则完成了theme工程的建立。

2、Liferay的主题开发是在他提供的一个模板的基础上进行修改。我们将个性化的内容放置于_diffs目录下面,在deploy的时候,liferay会自动的将此文件的内容合并到主题中,并覆盖原先相应的内容。如果没有覆盖的则采用默认的样式等。

3、liferay的主题主要有四部分组成,CSSimagesjstemplate。这几部分中前三部分,不需要特别说明。template里面是使用Velocity编写的模板,方便我们修改他相应的模板内容。

4、依次说明:

CSS

CSS里面的文件是分类的,如forms.css里面是定义的表单相关的,navigation.css里面是定义的导航相关的,layout.css是定义的布局相关的等等。比如我们需要修改导航的样式,则在_diffs目录下面建立css目录,并将上面的navigation.css复制到_diffs/css/下面。我们在此文件上修改,liferay IDE会自动的编译覆盖原先的内容。

如果我们需要定义的CSS内容,不是liferay本身提供的,而是我们自己新建立的样式,则推荐将此样式写在_diffs/css/custom.css里面。

JS

js的内容一般不做修改,也没有必要在主题包里面定义太多的JS相关的内容。

images

将和自己编辑的主题相关的图片存于images目录下面。如果需要在代码中引用,可以使用

String imgpath = themeDisplay.getPathThemeImages();

这里取到的imgpath,即为images目录。

templates

模板文件,用于定义常用的portlet、导航、通用的等模板文件。可以根据自己的实际需求进行修改。和普通的Velocity一样,如果对于Velocity不熟悉的,可以大概了解一下,使用起来和普通的HTML没有太大的区别。

主题的发布

主题创建修改完成后,点击ant中的deploy进行发布即可。

其他说明

_diffs目录里面只需要复制自己要修改的内容,不需要修改的则不需要复制过来,如下图:

1、我需要修改layout.css,则只需要从上级的CSS目录里面将此文件复制过来,在此文件上进行修改。不需要修改navigation.css则不用复制。其他的也类似。

2、图片,我需要将自定义的图片保存到common目录下面,则需要要创建一个comon目录,在引下面存放自己的文件即可。

3、tumbnail.png文件是存放的主题的缩略图,方便在切换主题时预览。

© 著作权归作者所有

共有 人打赏支持
攻城狮不是猫
粉丝 3
博文 57
码字总数 86313
作品 0
杭州
程序员
私信 提问
liferay整理(留着备用)

Liferay 6.1开发学习(二十):Dynamic Query高级查询 在上一篇的博客《Liferay 6.1开发学习(十九):Liferay ServiceBuilder之自定义查询》之中介绍了一部分简单的Dynamic Query方法,可以...

IT小香猪
2014/07/17
0
5
Liferay Portal 6.1 CE 发布

Liferay 的新版本旗舰软件产品 Liferay Portal 6.1 CE 今天发布![下载][快速开始] Liferay 的产品团队和开发团队与我们优秀的社区协调一致,历时数月致力于 6.1 的发布,现在终于大功告成。...

红薯
2012/02/24
1K
4
Liferay开发学习Part3:5种开发模式

Liferay共有5种开发模式: portlet(portlet插件):其结构和内容和普通的WEB工程区别不大 portlet-ext(portlet扩展插件):不推荐 layout(布局):可定制布局 theme(主题):主题包,通过此模式提...

派卡琪安
2013/01/25
0
0
Liferay7的环境搭建

公司主管建议我用Liferay来做公司的门户网站。现阶段公司的门户网站,每次有新的需求,需要重新编写代码的方式,与业务太耦合了,需要重构。他以前的公司就是用这个开发的。 主题搭建的链接...

miaojiangmin
2016/11/18
4
0
初学liferay,怎么用liferay整合第三方应用程序,请高手给点建议?

本人大学实习生,刚进公司实习,刚接触liferay,请教高手们怎么用liferay去整合第三方应用程序,给点学习建议,谢谢。目前我用的是liferay版本是6.1的,是在win7系统上安装部署测试的,目的是...

jobbiss
2013/03/23
1K
2

没有更多内容

加载失败,请刷新页面

加载更多

2019 年最好的 7 款虚拟私人网络服务

糟糕的数据安全会带来极大的代价,特别是对企业而言。它会大致大规模的破坏并影响你的品牌声誉。尽管有些企业可以艰难地收拾残局,但仍有一些企业无法从事故中完全恢复。不过现在,你很幸运地...

linuxCool
25分钟前
1
0
OSChina 周一乱弹 —— 加油,还有11个小时就下班了

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @_全村的希望 :吴亦凡把大碗面正儿八经做成单曲了,你别说,还挺好听 《大碗宽面》- 吴亦凡 手机党少年们想听歌,请使劲儿戳(这里) @tom_t...

小小编辑
46分钟前
147
8
C++ vector和list的区别

1.vector数据结构 vector和数组类似,拥有一段连续的内存空间,并且起始地址不变。 因此能高效的进行随机存取,时间复杂度为o(1); 但因为内存空间是连续的,所以在进行插入和删除操作时,会造...

shzwork
今天
7
0
Spring之invokeBeanFactoryPostProcessors详解

Spring的refresh的invokeBeanFactoryPostProcessors,就是调用所有注册的、原始的BeanFactoryPostProcessor。 相关源码 public static void invokeBeanFactoryPostProcessors(Configu......

cregu
昨天
6
0
ibmcom/db2express-c_docker官方使用文档

(DEPRECIATED) Please check DB2 Developer-C Edition for the replacement. What is IBM DB2 Express-C ? ``IBM DB2 Express-C``` is the no-charge community edition of DB2 server, a si......

BG2KNT
昨天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部