簡單說明Liferay基本的東西 & 一些操作
----------------------------------------------------------------------------------------------------------------------
一.theme和portlet的差別
Theme 每一頁都長的一樣的地方,例如Header、Footer、每一頁都要有的廣告
Portlet 網頁上一塊一塊的部分,每一個區塊都可以設成一個Portlet
以下是影片老師做的Liferay網頁
二.layout說明 & 自創新的
layout就是網頁格局
在網頁中點選如下,可以看到預設的layout有這些,也可以自創
自創layout
增加分隔線
因為Liferay使用12 格來設定layout
發布後,就可以在網頁上看到此layout
如果我還有別的分頁要不同layout,可以創建新的分頁layout
檔案中就有新的分頁layout可以設計了,一樣要用Ant build上去才能在網頁中設定
三.其他操作
有了新的layout,就會想說要怎麼用在分頁中,
現在說明如何增加分頁
標示紅色表示常修改
- portal_normal.ftl : 定義除了中間內容以外的所有,例如有<html>、<head>、<body>。下面是內容說明
- navigation.ftl 導航列(Menu)的模板
- init_custom.ftl 有參數要設定可以寫在這
- portal_pop_up.ftl 廣告用的彈跳視窗,需要廣告彈跳可以寫這個
- portlet.ftl 設定portlet樣式,一般不會修改這個,會去動個別的portlet
要看變數定義檔,必須導入Liferay原碼,導入方式如下
導入後,
ctrl+shift+R 搜尋 init.vm,可以看到Liferay定義變數的內容
ctrl+shift+R 搜尋 init.ftl,可以看到變數導哪個模板 (這我不太懂了)
ctrl+shift+R 搜尋 VelocityTemplateContextHelper,在init.vm找不到想用的變數時,可以來這裡找
如果還是沒有想用的,就可以自己定義變數了,如何定義變數,下次再說嚕。
要網路上查詢Liferay的變數可以參考此網址:https://docs.liferay.com/portal/5.2/javadocs/portal-impl/allclasses-noframe.html
< Way 1 >
抓原本就有的專案到我們新配置好的IDE中,以下我Checkout原有的專案,
如果讀者的公司不是用SVN保存專案可以略過 (這也是我自己記錄用的啦),
總之就是把原本已有的Liferay專案放到已經配置好的SDK資料夾中
已有的theme抓下來
已有的portlat抓下來
已有的hook也要抓
已有的layout要抓
已有的web內容抓下來
打開Exclipse,import 放好在sdk中的Liferay專案到Eclipse裡面
原本的專案可能有連SQL server,所以才有這一個步驟,如果讀者原專案沒有連SQL server就可略過
設定SQL Server,開以下檔案,加入jdbc內容
Copy 原專案的Tomcat 來當作自己IDE的Server。
這個步驟一定要,我原本沒有Copy原專案的Tomcat結果網頁就搞不起來,最後發現是Tomcat裡面也有原專案的一些設定值,但是慢慢Copy過來太麻煩了,所以建議直接Copy原專案的整個Tomcat,而且原專案的Tomcat原本放在哪個槽也要放一樣的槽。
打開Eclipse配置Server,
把import的sdk檔案拖拉到Server,然後啟動Server,再到localhost看看有無成功跑出網頁,有跑出原專案的網頁才是成功。
< Way 2 >
如果還是不行,建議Copy整個專案的SDK和Tomcat資料夾,用新版的Eclipse直接配置SDK和Server為此專案的sdk & tomcat資料夾。
我最後是用這個方法成功導入現有專案的。
之後發現這樣會有IDE和SDK版本不合的問題,如果要使用新的IDE,就不能copy舊專案的SDK了..
編輯會使用到的參數
名字的部分必須取英文,到時候取參數才能使用
寫html的部分,進去後點擊"編輯"
這裡就可以寫html了,裡面讀取的CSS是theme裡面設定的
做好了這個結構portlet後,接著我們就要增加到網頁中了
回到網頁(要登入)
拖拉進去葉面就成功了