2016-06-02 14 views
0

Ich muss das Datum, an dem der Webinhalt zuletzt aktualisiert wurde, und die Häufigkeit, mit der der Webinhalt in meiner Liferay 6.1 Web Content Vorlage angezeigt wurde, einbeziehen.Seitenansichten und das letzte aktualisierte Datum in einer Liferay Web Content Vorlage abrufen

Was ist der beste Weg, dies zu erreichen?

+0

#set ($groupId = $themeDisplay.getLayout().getGroupId()) #set ($journalArticleLocalService = $serviceLocator.findService("com.liferay.portlet.journal.service.JournalArticleLocalService")) #set ($ja = $journalArticleLocalService.getArticle($getterUtil.getLong($groupId),$getterUtil.getString($reserved-article-id.data))) #set ($resourceprimKey = $ja.getResourcePrimKey()) #set ($assetEntryLocalService = $serviceLocator.findService("com.liferay.portlet.asset.service.AssetEntryLocalService")) #set ($assetEntry = $assetEntryLocalService.getEntry("com.liferay.portlet.journal.model.JournalArticle", $resourceprimKey)) count view = $assetEntry.viewCount 

Freemarker verwenden, können Sie Attribut assetEntry Objekt in Bezug auf Ihre Web-Inhalte für Anzahl der Aufrufe überprüfen , auch modifiedDatum von AssetEntry oder JournalArticle -Objekt können Sie zuletzt aktualisierten Datum geben –

+0

@PankajkumarKathiriya Wie gehe ich über das Abrufen der AssetEntry von der Web-Content-Vorlage? –

Antwort

1

Geschwindigkeit Für das geänderte Datum, das Sie die Variable $reserved-article-modified-date.data und für die Zählung der Ansicht

<#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.portlet.journal.service.JournalArticleLocalService")> 
<#assign assetLinkLocalService = serviceLocator.findService("com.liferay.portlet.asset.service.AssetLinkLocalService")> 
<#assign assetEntryLocalService = serviceLocator.findService("com.liferay.portlet.asset.service.AssetEntryLocalService")> 
<#assign getterUtil = staticUtil["com.liferay.portal.kernel.util.GetterUtil"] /> 
<#assign currentArticle = JournalArticleLocalService.getArticle(getterUtil.getLong(groupId),.vars['reserved-article-id'].data)> 
<#assign currentArticleResourcePrimKey = currentArticle.getResourcePrimKey()> 
<#assign currentArticleAssetEntry = assetEntryLocalService.getEntry("com.liferay.portlet.journal.model.JournalArticle", currentArticleResourcePrimKey)/> 

view count = ${currentArticleAssetEntry.viewCount} 
modifydate = ${.vars['reserved-article-modified-date'].data} 
+0

Ich bekomme einen Fehler "Ausdruck serviceLocator ist undefined". Irgendwelche Ideen warum? –

+1

Sie müssen den Service Locator für die Vorlage in portal-ext.properties aktivieren –