如何写一个漂亮的Liferay Theme 6.2

只要你看到的、想做出来的页面,都可以通过liferay theme来实现,至于具体实现凡方式,那就见仁见智了。

下面,我将介绍如何快速地建一个简单漂亮的liferay theme.

工具:liferay IDE 3.0, liferay SDK 6.2,liferay portal 6.2(至于怎么在哪里下载,请参考前面教程)

以上工具准备好了以后,就可以在网上随便找一个你喜欢的模板作为参考下载下来,等下我们就可以把你的theme改造成你想要的样纸啦。

下面是我做的成品:

下面就是具体制作过程啦:

1.打开liferay IDE选择建一个liferay的plugin项目

2.然后选择classic模式的,这个是liferay默认的theme,我们会在它的基础上进行修改,然后模板语言选择velocity,因为在62中liferay自己默认用的就是velocity,如果选freemaker的话,还需要对导航栏进行更多的修改。

3,然后theme就建成功啦,你可以把它部署到liferay portal上,发现它就是liferay传统的theme,然后我们就可以在它的基础上进行我们自己的修改了。

打开我们所建theme的目录结构,你会发现里面有一个differs的文件夹,等下你所要做的修改都要放在这个文件夹下才能生效,不建议直接修改portal原有的文件。

4.我现在主要要修改的就是导航栏部分和页脚。发现其实它的代码就在template/portal_normal.vm文件中,我就把这个文件夹连同文件一起拷贝到_diffs文件夹下,页脚是最好改的,找到页脚标签,原来代码如下

<footer id="footer" role="contentinfo">
        <p class="powered-by">
            #language ("powered-by") <a href="http://www.liferay.com" rel="external">Liferay</a>
        </p>
    </footer>

把它换成我想要的代码,我直接从模板中把它html页脚的代码拷进来了,如下:

<footer id="footer" role="contentinfo">
        <div class="footer">
            <div class="footer-mid">
                    <div class="container">
                        <div class="col-sm-3 ft-grid1">
                            <h3>Location</h3>
                            <p>Contrary to popular</p>
                            <p>perspiciatis</p>
                            <p>+10 999 333 52</p>
                        </div>
                        <div class="col-sm-3 ft-grid2">
                        <h3>Follow Us</h3>
                            <ul class="social-in">
                                <li><a href="#"><i> </i></a></li>
                                <li><a href="#"><i class="twitter"> </i></a></li>
                                <li><a href="#"><i class="dribbble"> </i></a></li>
                            </ul>
                        </div>
                        <div class="col-sm-6 ft-grid1">
                            <h3>Newsletter</h3>
                            <form>
                                <input type="text" value="" onfocus="this.value=‘‘;" onblur="if (this.value == ‘‘) {this.value =‘‘;}">
                                <input type="submit" value="Subscribe">
                            </form>
                        </div>
                        <div class="clearfix"> </div>
                    </div>
                </div>
                <div class="class-footer">
                    <div class="container">
                        <div class="col-md-6 footer-grid">
                            <p >Copyright &copy; 2015.Company name All rights reserved.More Templates <a href="http://www.cssmoban.com/" target="_blank" title="模板之家">hello</a> - Collect from <a href="http://www.cssmoban.com/" title="网页模板" target="_blank">joye</a></p>
                        </div>
                            <div class="clearfix"> </div>
                </div>
            </div>
         </div>
</footer>

这时你保存一下,在重新部署一下theme,你会发现footer的文字都上去了,但是没有css样式与图片,偷懒的方式就是,把原来模板文件中的css,image,js文件夹都拷贝到_diffs文件夹下。然后怎么把模板的css和liferay的theme关联起来呢,把liferay自带的main.css拷贝到_diffs文件夹下去,然后仿照里面的格式把模板的css文件全部包含进去。

然后再部署上去试一下效果,发现它的页脚部分就跟我们模板上的页脚一模一样啦。

需要注意的是,模板里面的某些css属性跟liferay的属性重合了,会改变原来的页面布局。这时你可能需要做的就是用不那么偷懒的方法了,不是把模板所有的css都包括进去,而是把你需要的属性包括进去。

5.然后导航修改的方法差不多,我随便 写了一个作为参考,可以看看我改的是哪些地方,有什么问题,哈哈,下次再改。

The most import thing is show u the code.

my-classic-theme

时间: 2024-08-05 19:35:50

如何写一个漂亮的Liferay Theme 6.2的相关文章

自写一个漂亮的ant design form提交标签

在ant design 的form组件中 能用于提交的组件比较少,所以我在这写了一个可以单选.多选标签提交的组件,调用非常简单. 代码: 1 import React,{Fragment} from 'react'; 2 import { Tag,Icon,Input } from 'antd'; 3 export interface TagDataType{ 4 data:string, 5 color:string, 6 key:string 7 } 8 export interface P

PHP入门培训教程 一个漂亮的PHP验证码

PHP入门培训教程 一个漂亮的PHP验证码 如何写一个漂亮的PHP验证码?兄弟连PHP培训小编分享一段代码给大家: <?php class Imagecode{ private $width ; private $height; private $counts; private $distrubcode; private $fonturl; private $session; function __construct($width = 120,$height = 30,$counts = 5,$

基于zabbix用Python写一个运维流量气象图

前言:同事问我,你写运维平台最先写哪一部分?好吧,还真把我问倒了,因为这是在问最应该放在放在第一位的东西~作为一个工作不足两年,运维不足一年的新手来说,还真不敢妄下评论,其实按照我的思路,觉得最重要的部分肯定是故障处理,报警,但是这一块怎么写?怎么说?肯定不能重复造轮子了,不过我最想写的是报表系统,思路是有的,但是一直耽搁了,详情参考http://youerning.blog.51cto.com/10513771/1708925. 好吧,在回到那个问题,应该先写哪个部分.我没回答,反问他了. 他

写一个Android输入法——最简步骤

本文演示用Android Studio写一个最简单的输入法.界面和交互都很简陋,只为剔肉留骨,彰显写一个Android输入法的要点. 1.打开Android Studio创建项目,该项目和普通APP的不同之处在于它不需要添加任何Activity: 我给该输入法命名为AndroidXXIME. 2.修改manifest文件 如前文<Android下创建一个输入法>中所说:输入法是一个包含IME service的安卓应用程序,首先应该在程序的manifest中声明service.我的manifes

Bootstrap--模仿官网写一个页面

本文参考Bootstrap官方文档写了简单页面来熟悉Bootstrap的栅格系统.常用CSS样.Javascript插件和部分组件. 以下html代码可以直接复制本地运行: BootstrapPage1:常见的一种页面类型,页面导航,左侧分类.右侧新闻列表: <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta charset="utf-8&q

android如何写一个自定义的dialog可以在Title的位置弹出来

先上效果图: Title的Layout为: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="@dimen/title_h

如何写一个Web服务器

最近两个月的业余时间在写一个私人项目,目的是在Linux下写一个高性能Web服务器,名字叫Zaver.主体框架和基本功能已完成,还有一些高级功能日后会逐渐增加,代码放在了github.Zaver的框架会在代码量尽量少的情况下接近工业水平,而不像一些教科书上的toy server为了教原理而舍弃了很多原本server应该有的东西.在本篇文章中,我将一步步地阐明Zaver的设计方案和开发过程中遇到的困难以及相应的解决方法. 为什么要重复造轮子 几乎每个人每天都要或多或少和Web服务器打交道,比较著名

一个漂亮的php验证码类

一个漂亮的php验证码类(分享) 作者: 字体:[增加 减小] 类型:转载 下面小编就为大家分享一个漂亮的php验证码类.需要的朋友可以过来参考下 直接上代码: 复制代码 代码如下: //验证码类class ValidateCode { private $charset = 'abcdefghkmnprstuvwxyzABCDEFGHKMNPRSTUVWXYZ23456789';//随机因子 private $code;//验证码 private $codelen = 4;//验证码长度 pri

小规则让你写出漂亮又高效的程序

本文来自肥宝游戏,引用必须保留文末二维码!!! 好几天没写文章了,周一整理自己刚修好的旧电脑,发现一本书<高质量C++编程指南>.因为最近在写游戏服务端的战斗,所以这个立刻就吸引肥宝了.看了几天,深深感觉获益良多啊.于是把笔记和自己的经验写下来,分享给大家. 一.写出漂亮易读的程序 中学时代上课很喜欢做笔记,但是肥宝几乎没看过自己的笔记,不是肥宝懒,是因为肥宝字太丑了. 后来成为一个程序员,以为这些代码都是电脑输出,统一字体,就不用这么纠结了.谁知道代码更需要写得漂亮,因为需求是不断在变化的,