posts - 19,  comments - 123,  trackbacks - 0
          ?????? Liferay Portal CMS(Content Manage System) 提供了兩大功能:文檔管理和文章發(fā)布。文檔管理包括文檔庫(kù)和圖片集兩個(gè) portlets ,能夠提供對(duì) Microsoft Office 文檔、 PDFs 、文本文件和圖片的管理;文章發(fā)布功能依靠 Liferay Portal 中的 Journal portlet 完成,它的特性是能夠?qū)?shù)據(jù)( data entry )和版面設(shè)計(jì)( Layout Design )很輕易的分開,這就使得 content 能夠復(fù)合一致的“ look and feel ”,另外, Journal portlet 提供了 content 的版本跟蹤和發(fā)布流程的功能。
          ???

          Liferay PortalCMS功能是通過Journal Portlet實(shí)現(xiàn)的,在介紹怎樣使用Journal Portlet之前,有必要理解structurestemplatesarticles的概念,它們是Journal portlet功能的基礎(chǔ)。

          l???????? Structures:定于了content的類型和數(shù)量,content的類型包括texttext areaimagesselection lists

          l???????? Templates:確定content怎樣排列或擺放

          l???????? Articles:確定每個(gè)content包含的實(shí)際的textimages

          ??
          ??? 我們以下圖為例定義一個(gè)
          content,分為三個(gè)步驟:

          1.JPG

          第一步、創(chuàng)建Structure,包含一下元素:一個(gè)text元素名為“headline”(對(duì)應(yīng)圖片1區(qū)域)、三個(gè)text area元素為名稱分別為“body-text”(對(duì)應(yīng)4區(qū)域)“caption-1”(對(duì)應(yīng)2區(qū)域)“caption-2”(對(duì)應(yīng)6區(qū)域)、兩個(gè)image元素名稱分別為“image-1”(對(duì)應(yīng)3區(qū)域)和“image-2”(對(duì)應(yīng)5區(qū)域)

          添加完這些元素后的界面如下:
          2.JPG

          點(diǎn)擊Launch Editor按鈕,可以看到XML定義,也可以在此增刪或修改元素及類型,內(nèi)容如下:

          <root>
          ??
          <dynamic-element?name='headline'?type='text'></dynamic-element>
          ??
          <dynamic-element?name='body-text'?type='text_area'></dynamic-element>
          ??
          <dynamic-element?name='caption-1'?type='text_area'></dynamic-element>
          ??
          <dynamic-element?name='caption-2'?type='text_area'></dynamic-element>
          ??
          <dynamic-element?name='image-1'?type='image'></dynamic-element>
          ??
          <dynamic-element?name='image-2'?type='image'></dynamic-element>
          </root>

          第二步、創(chuàng)建 Template ,添入 ID Name Description 信息后,在 Structure 一欄選擇上一步創(chuàng)建的 Structure (這里為 test
          3.JPG

          然后點(diǎn)擊 Launch Editor 按鈕,打開 Template 編輯窗口,按照所需要的格式定義 Template ,如下:

          <? xml?version = " 1.0 " ?>

          < xsl:stylesheet?xmlns:xsl = " http://www.w3.org/1999/XSL/Transform " ?version = " 1.0 " > ??
          ??
          < xsl:output?method = " html " ?omit - xml - declaration = " yes " /> ??
          ??
          < xsl:template?match = " / " > ?
          ????
          < table?cellpadding = " 0 " ?cellspacing = " 0 " ?border = " 0 " ?width = " 100% " > ?
          ??????
          < tr > ?
          ????????
          < td?colspan = " 2 " >
          ??????????
          < xsl:value - of
          ?disable
          - output - escaping = " yes " ?select = " root/dynamic-element[@name='headline']/dynamic-content " />
          ????????
          </ td >
          ??????
          </ tr >
          ??????
          < tr >
          ????????
          < td >
          ??????????
          < img > ?
          ????????????
          < xsl:attribute?name = " src " > ?
          ??????????????
          < xsl:value - of?
          disable
          - output - escaping = " yes " ?select = " root/dynamic-element[@name='image-1']/dynamic-content " /> ?
          ????????????
          </ xsl:attribute > ?
          ??????????
          </ img >
          ????????
          </ td >
          ????????
          < td >
          ??????????
          < xsl:value - of?
          disable
          - output - escaping = " yes " ?select = " root/dynamic-element[@name='caption-1']/dynamic-content " />
          ????????
          </ td >
          ??????
          </ tr >
          ??????
          < tr >
          ????????
          < td?colspan = " 2 " >
          ??????????
          < xsl:value - of?
          disable
          - output - escaping = " yes " ?select = " root/dynamic-element[@name='body-text']/dynamic-content " />
          ????????
          </ td >
          ??????
          </ tr >
          ??????
          < tr >
          ????????
          < td >
          ??????????
          < xsl:value - of?
          disable
          - output - escaping = " yes " ?select = " root/dynamic-element[@name='caption-2']/dynamic-content " />
          ????????
          </ td >
          ????????
          < td >
          ??????????
          < img > ?
          ????????????
          < xsl:attribute?name = " src " > ?
          ??????????????
          < xsl:value - of?
          disable
          - output - escaping = " yes " ?select = " root/dynamic-element[@name='image-2']/dynamic-content " /> ?
          ????????????
          </ xsl:attribute > ?
          ??????????
          </ img >
          ????????
          </ td >
          ??????
          </ tr >
          ????
          </ table > ?
          ??
          </ xsl:template > ?
          </ xsl:stylesheet >

          下面對(duì)該文件進(jìn)行說明:

          1 、這里的 @name=’ 名稱 必須要和第一步中創(chuàng)建 Structure 中的元素名稱一致,頁(yè)面格式根據(jù)需求使用 HTML 語言定義即可。

          2 、對(duì) text text area 類型的元素輸出時(shí)的格式如下:

          <xsl:value-of

          disable-output-escaping="yes" select="root/dynamic-element[@name='caption-2']/dynamic-content"/>

          1、? 對(duì) image 類型的元素輸出時(shí)的格式如下:

          <img>

          ? <xsl:attribute name="src">

          ??? <xsl:value-of

          disable-output-escaping="yes" select="root/dynamic-element[@name='image-2']/dynamic-content"/>

          ? </xsl:attribute>

          </img>

          第三步、創(chuàng)建 Article ,添寫基本信息后,在 Structure 一欄選擇 test ,對(duì)應(yīng)的 Template 一欄也選擇 test 即可,然后在對(duì)應(yīng)的元素域里添入合適的文本或者圖片,點(diǎn)擊預(yù)覽即可以看到如下界面,確定無問題后,點(diǎn)擊保存或者保存并發(fā)布按鈕即可完成 content 的定制。
          4.JPG

          通過以上三個(gè)步驟,我們就實(shí)現(xiàn)了定制content的功能。使用Journal Portlet,我們可以定制任何不同風(fēng)格的content來展示必要的信息。

          posted on 2006-08-04 14:15 韓淚 閱讀(6095) 評(píng)論(5)  編輯  收藏 所屬分類: Liferay學(xué)習(xí)


          FeedBack:
          # re: 【原創(chuàng)】Liferay Portal學(xué)習(xí)筆記(二):使用CMS
          2006-08-18 14:05 | chu xue zhe
          謝謝摟主,正在試驗(yàn)
            回復(fù)  更多評(píng)論
            
          # re: 【原創(chuàng)】Liferay Portal學(xué)習(xí)筆記(二):使用CMS
          2006-08-21 10:24 | Spike Wang
          摟主使用過 Velocity 進(jìn)行模版定義么?如果使用過和XSL 比較那個(gè)比較方便,謝謝。


            回復(fù)  更多評(píng)論
            
          # re: 【原創(chuàng)】Liferay Portal學(xué)習(xí)筆記(二):使用CMS
          2006-08-21 13:36 | 韓淚
          @Spike Wang
          我沒有使用過velocity定義模板,甚至我不知道liferay是不是支持使用velocity定義template,只是liferay中可以使用velocity定義theme,如果哪位兄弟對(duì)這方面有研究,還希望能分享經(jīng)驗(yàn)  回復(fù)  更多評(píng)論
            
          # re: 【原創(chuàng)】Liferay Portal學(xué)習(xí)筆記(二):使用CMS
          2008-01-21 15:48 | itfans
          您好,我們是一家從事java培訓(xùn)的公司,看了您關(guān)于portal的文章,很感興趣,想請(qǐng)您到我們的課堂上講一堂課,帶著學(xué)生做做portal的實(shí)例,您如果有意向,希望您加我QQ:406997257,注明“portal”,介時(shí)我們?cè)俾?lián)系!  回復(fù)  更多評(píng)論
            
          # re: 【原創(chuàng)】Liferay Portal學(xué)習(xí)筆記(二):使用CMS[未登錄]
          2013-03-11 09:20 | jane
          我急需您的幫助,能加我Q嗎??  回復(fù)  更多評(píng)論
            

          虛其心,可解天下之問; 專其心,可治天下之學(xué); 靜其心,可悟天下之理; 恒其心,可成天下之業(yè)。

          常用鏈接

          留言簿(12)

          隨筆分類(19)

          隨筆檔案(19)

          搜索

          •  

          最新評(píng)論

          閱讀排行榜

          主站蜘蛛池模板: 东乡县| 吴桥县| 托克托县| 盐池县| 青铜峡市| 昌宁县| 芦溪县| 普兰县| 林甸县| 启东市| 许昌市| 日照市| 老河口市| 福泉市| 临高县| 肥城市| 昌图县| 三河市| 边坝县| 五指山市| 孝感市| 新疆| 兰坪| 南木林县| 南乐县| 凤庆县| 辽阳县| 深圳市| 二连浩特市| 阿拉善右旗| 宾阳县| 邳州市| 达州市| 司法| 溧水县| 富阳市| 农安县| 宁海县| 玉环县| 胶州市| 林口县|