Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Templates 如何访问日期字段并在Liferay应用程序显示模板(ADT)中显示_Templates_Liferay_Structure_Adt_Velocity - Fatal编程技术网

Templates 如何访问日期字段并在Liferay应用程序显示模板(ADT)中显示

Templates 如何访问日期字段并在Liferay应用程序显示模板(ADT)中显示,templates,liferay,structure,adt,velocity,Templates,Liferay,Structure,Adt,Velocity,我创建了一个基本上用于收集新闻文章信息的结构。其中一个字段是文章的日期。如图所示: 我从资产发布器中选择此结构,填写字段并保存。然后我尝试查看资产发布者所在页面上的字段。我可以使用应用程序显示模板(ADT)访问和显示除日期以外的所有字段!我在互联网上搜寻答案,并向社区寻求帮助 这是我用来选择和格式化代码的应用程序显示模板的代码 *免责声明:我不是java程序员,所以任何额外的解释都会非常有用 <div class="container news-listing"> <d

我创建了一个基本上用于收集新闻文章信息的结构。其中一个字段是文章的日期。如图所示:

我从资产发布器中选择此结构,填写字段并保存。然后我尝试查看资产发布者所在页面上的字段。我可以使用应用程序显示模板(ADT)访问和显示除日期以外的所有字段!我在互联网上搜寻答案,并向社区寻求帮助

这是我用来选择和格式化代码的应用程序显示模板的代码

*免责声明:我不是java程序员,所以任何额外的解释都会非常有用

<div class="container news-listing">
   <div class="row">
        <div class="span9">

#if (!$entries.isEmpty())

    #foreach ($entry in $entries)

        #set($renderer = $entry.getAssetRenderer() )
        #set($className = $renderer.getClassName() )

        #if( $className == "com.liferay.portlet.journal.model.JournalArticle" )
            #set( $journalArticle = $renderer.getArticle() )
            #set( $document = $saxReaderUtil.read($journalArticle.getContent()) )
            #set( $rootElement = $document.getRootElement() )

            ## FETCH Title
            #set( $xPathSelector = $saxReaderUtil.createXPath("dynamic-element[@name='newstitle']") )
            #set( $title = $xPathSelector.selectSingleNode($rootElement).getStringValue())

            ## FETCH image
            #set( $xPathSelector = $saxReaderUtil.createXPath("dynamic-element[@name='featureimage']") )
            #set( $img = $xPathSelector.selectSingleNode($rootElement).getStringValue())

            ## FETCH FullDescription
            #set( $xPathSelector = $saxReaderUtil.createXPath("dynamic-element[@name='newsfulldescription']") )
            #set( $fulldesc = $xPathSelector.selectSingleNode($rootElement).getStringValue() )

            ## FETCH ShortDescription
            #set( $xPathSelector = $saxReaderUtil.createXPath("dynamic-element[@name='newsshortdescription']") )
            #set( $shortdesc = $xPathSelector.selectSingleNode($rootElement).getStringValue() )

            ## FETCH date
            #set( $xPathSelector = $saxReaderUtil.createXPath("dynamic-element[@name='articleDate']") )
            #set( $datetest = $xPathSelector.selectSingleNode($rootElement).getStringValue() )

            ## FETCH Group
            #set( $xPathSelector = $saxReaderUtil.createXPath("dynamic-element[@name='group']") )
            #set( $Group = $xPathSelector.selectSingleNode($rootElement).getStringValue())

            #set( $link = $assetPublisherHelper.getAssetViewURL($renderRequest, $renderResponse, $entry) ) 
            #if ("$assetLinkBehavior" != "showFullContent") 
                #set( $link = $renderer.getURLViewInContext($renderRequest, $renderResponse, $link) ) 
            #end 

       ##$entry.getExpandoBridge().getAttributeNames()
       $entry.date.getClass().getName()

              <div class="listing">

                        <img src="$img" alt="$img" class="thumbnail">

                        <div class="news-info">

                            <div class="news-date">
                                 <span>$datetest</span> <br/>
                            </div>

                            <p class="news-category">Announcement</p>
                            <h2>$title</h2>
                            <p>$shortdesc</br><a href="$link">Read More  »</a></p>
                        </div>
                </div> 

        #end
    #end

#end
</div>
</div>
</div>

#if(!$entries.isEmpty())
#foreach($entries中的条目)
#set($renderer=$entry.getAssetTrenderer())
#set($className=$renderer.getClassName())
#if($className==“com.liferay.portlet.journal.model.JournalArticle”)
#set($journalaarticle=$renderer.getArticle())
#set($document=$saxReaderUtil.read($journalaarticle.getContent()))
#set($rootElement=$document.getRootElement())
##获取标题
#set($xPathSelector=$saxReaderUtil.createXPath(“动态元素[@name='newsttitle']))
#set($title=$xPathSelector.selectSingleNode($rootElement.getStringValue())
##获取图像
#set($xPathSelector=$saxReaderUtil.createXPath(“动态元素[@name='featureimage']))
#set($img=$xPathSelector.selectSingleNode($rootElement.getStringValue())
##获取完整描述
#set($xPathSelector=$saxReaderUtil.createXPath(“动态元素[@name='newsfulldescription']))
#set($fulldesc=$xPathSelector.selectSingleNode($rootElement.getStringValue())
##获取简短描述
#set($xPathSelector=$saxReaderUtil.createXPath(“动态元素[@name='newshortdescription']))
#set($shortdesc=$xPathSelector.selectSingleNode($rootElement.getStringValue())
##提取日期
#set($xPathSelector=$saxReaderUtil.createXPath(“动态元素[@name='articleDate']))
#set($datetest=$xPathSelector.selectSingleNode($rootElement.getStringValue())
##取数组
#set($xPathSelector=$saxReaderUtil.createXPath(“动态元素[@name='group']))
#set($Group=$xPathSelector.selectSingleNode($rootElement.getStringValue())
#set($link=$assetPublisherHelper.getAssetViewURL($renderRequest,$renderResponse,$entry))
#如果(“$assetLinkBehavior”!=“showFullContent”)
#set($link=$renderer.getURLViewInContext($renderRequest,$renderResponse,$link))
#结束
##$entry.getExpandoBridge().getAttributeNames()
$entry.date.getClass().getName()
$datetest

公告

$title $shortdesc

#结束 #结束 #结束
模板编辑器(至少在Liferay 7中)允许您通过单击字段来添加字段。以下是此项添加到模板中的内容:

免费标记:

<#assign articleDate_Data = getterUtil.getString(articleDate.getData())>

<#if validator.isNotNull(articleDate_Data)>
    <#assign articleDate_DateObj = dateUtil.parseDate("yyyy-MM-dd", articleDate_Data, locale)>

    ${dateUtil.getDate(articleDate_DateObj, "dd MMM yyyy - HH:mm:ss", locale)}
</#if>
刚刚试过这个。我在6.2中(如果我没有提到,很抱歉)。我没有提供日期数据。不知道问题是什么。
#set ($articleDate_Data = $getterUtil.getString($articleDate.getData()))

#if ($validator.isNotNull($articleDate_Data))
    #set ($articleDate_DateObj = $dateUtil.parseDate("yyyy-MM-dd",$articleDate_Data, $locale))

    $dateUtil.getDate($articleDate_DateObj, "dd MMM yyyy - HH:mm:ss", $locale)
#end