Liferay Portal学习笔记(二):使用CMS

系统 1448 0
       Liferay Portal CMS(Content Manage System) 提供了两大功能:文档管理和文章发布。文档管理包括文档库和图片集两个 portlets ,能够提供对 Microsoft Office 文档、 PDFs 、文本文件和图片的管理;文章发布功能依靠 Liferay Portal 中的 Journal portlet 完成,它的特性是能够将数据( data entry )和版面设计( Layout Design )很轻易的分开,这就使得 content 能够复合一致的“ look and feel ”,另外, Journal portlet 提供了 content 的版本跟踪和发布流程的功能。
   

Liferay Portal CMS 功能是通过 Journal Portlet 实现的,在介绍怎样使用 Journal Portlet 之前,有必要理解 structures templates articles 的概念,它们是 Journal portlet 功能的基础。

l          Structures :定于了 content 的类型和数量, content 的类型包括 text text area images selection lists

l          Templates :确定 content 怎样排列或摆放

l          Articles :确定每个 content 包含的实际的 text images

  
    我们以下图为例定义一个
content ,分为三个步骤:
1.JPG

第一步、创建 Structure ,包含一下元素:一个 text 元素名为“ headline ”(对应图片 1 区域)、三个 text area 元素为名称分别为“ body-text ”(对应 4 区域)“ caption-1 ”(对应 2 区域)“ caption-2 ”(对应 6 区域)、两个 image 元素名称分别为“ image-1 ”(对应 3 区域)和“ image-2 ”(对应 5 区域)

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

点击 Launch Editor 按钮,可以看到 XML 定义,也可以在此增删或修改元素及类型,内容如下:

< 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 >

第二步、创建 Template ,添入 ID Name Description 信息后,在 Structure 一栏选择上一步创建的 Structure (这里为 test
3.JPG

然后点击 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 >

下面对该文件进行说明:

1 、这里的 @name=’ 名称 必须要和第一步中创建 Structure 中的元素名称一致,页面格式根据需求使用 HTML 语言定义即可。

2 、对 text text area 类型的元素输出时的格式如下:

<xsl:value-of></xsl:value-of>

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

1、   image 类型的元素输出时的格式如下:

  <xsl:attribute name="src"> </xsl:attribute>

    <xsl:value-of></xsl:value-of>

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

 

第三步、创建 Article ,添写基本信息后,在 Structure 一栏选择 test ,对应的 Template 一栏也选择 test 即可,然后在对应的元素域里添入合适的文本或者图片,点击预览即可以看到如下界面,确定无问题后,点击保存或者保存并发布按钮即可完成 content 的定制。
4.JPG

通过以上三个步骤,我们就实现了定制 content 的功能。使用 Journal Portlet ,我们可以定制任何不同风格的 content 来展示必要的信息。

Liferay Portal学习笔记(二):使用CMS


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论