簡體   English   中英

Liferay DXP Web內容字段的內部結構

[英]Liferay DXP web content field inside structure

您好,我創建了一個簡單的結構,其中只有1個可重復的Web內容字段。 在我的模板中,我有以下代碼:

<#if WebContent75zf.getSiblings()?has_content>
    <#list WebContent75zf.getSiblings() as cur_WebContent75zf>
        <!-- Web Content Start -->
        ${cur_WebContent75zf.getData()}
        <!-- Web Content End -->
    </#list>
</#if>

期望的結果將是顯示每個呈現的Web內容或至少獲取其數據。 我得到的是以下內容,我想知道我做錯了什么嗎?

<!-- Web Content Start --> 

{"className":"com.liferay.journal.model.JournalArticle","classPK":"40952"} 

<!-- Web Content End --> 
<!-- Web Content Start --> 

{"className":"com.liferay.journal.model.JournalArticle","classPK":"40971"} 

<!-- Web Content End -->
<!-- Web Content Start --> 

{"className":"com.liferay.journal.model.JournalArticle","classPK":"40990"} 

<!-- Web Content End --> 

這是: {"className":"com.liferay.journal.model.JournalArticle","classPK":"40971"}是通過JournalArticleLocalService檢索選定的Web Content所需要的,您只需要像這樣獲取classPK :

<#if WebContent75zf.getSiblings()?has_content>
    <#list WebContent75zf.getSiblings() as cur_webContent>
        <#assign cur_webContent_map = cur_webContent.getData()?eval>
        <#assign cur_webContent_classPK = cur_webContent_map.classPK>

        <#assign article = JournalArticleLocalService.getLatestArticle(cur_webContent_classPK?number)>

    </#list>
</#if>

在使用它之前定義journalArticleLocalService:

<#assign journalArticleLocalService = serviceLocator.findService(“ com.liferay.journal.service.JournalArticleLocalService”)/>

這適用於Liferay 7.0。 確保在Liferay設置中禁用了受限變量

<#-- Liferay 7.0 -->
<#-- Make sure restricted variables are disabled in Liferay settings -->

<#assign 
    serviceContext = staticUtil["com.liferay.portal.kernel.service.ServiceContextThreadLocal"].getServiceContext()
    themeDisplay = serviceContext.getThemeDisplay()
    group_id = themeDisplay.getScopeGroupId()                    
    JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")    
>

<#if WebContent75zf.getSiblings()?has_content>
        <#list WebContent75zf.getSiblings() as cur_webContent>
                <#assign 
                    cur_webContent_map = cur_webContent.getData()?eval
                    cur_webContent_classPK = cur_webContent_map.classPK
                    article = JournalArticleLocalService.getLatestArticle(cur_webContent_classPK?number)
                    article_id = article.articleId
                    article_content = JournalArticleLocalService.getArticleContent(group_id, article_id, null, locale, themeDisplay)
                >

                ${article_content}

        </#list>
</#if>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM