Velocity テンプレートを作成して特定の構造の Web コンテンツ アイテムをループし、特定の構造フィールドの値に基づいてコンテンツをレンダリングする方法について、誰かがアイデアやスニペットを教えてくれませんか?
2259 次
1 に答える
0
navigation.vm
グループ リンクをレンダリングするスニペットを次に示します。
#set($groupLocalService = $serviceLocator.findService("com.liferay.portal.service.GroupLocalService"))
#set($groupCount = $groupLocalService.getGroupsCount())
#set($groups = $groupLocalService.getGroups( 0, $groupCount))
<div id="community-links">
<ul>
#foreach ($group in $groups)
#if ($group.community && $group.name != 'Guest' && $group.hasPublicLayouts())
#set ($groupURL = $portletURLFactory.create($request, $group.name, $group.defaultPublicPlid, "ACTION_PHASE"))
${groupURL.setWindowState("normal")}
${groupURL.setPortletMode("view")}
${groupURL.setLifecycle("0")}
${groupURL.setParameter("groupId", ${group.getGroupId().toString()})}
${groupURL.setParameter("privateLayout", "false")}
#if ($group.getGroupId() == $themeDisplay.getLayout().getGroup().getGroupId() )
#set ($className = "selected")
#else
#set ($className = "unselected")
#end
<li class="${className}">
<a href="${groupURL.toString()}"><span>$group.getName()</span></a>
</li>
#end
#end
</ul>
</div>
于 2011-12-10T15:54:44.220 に答える