如何在父站点标签云中显示子站点标签?

How to show child site tags in parent site tag cloud?

我正在连接标签云 portlet,但我不知道如何显示给子站点中内容的标签。在一个页面上,我有一个标签云和一个资产发布者,如果点击标签,它会显示标签内容。目前,子站点和父站点的标签和内容是分离的。

在标签云 portlet 选项中,我看到了一个全局范围选项,但没有显示任何内容。在 asset_tags_navigation/page.jsp 中,我看到以下内容用于实际获取标签数据:

if (showAssetCount && (classNameId > 0)) {
  tags = AssetTagServiceUtil.getTags(scopeGroupId, classNameId, null, 0, maxAssetTags, new AssetTagCountComparator());
}
else {
  tags = AssetTagServiceUtil.getGroupTags(siteGroupId, 0, maxAssetTags, new AssetTagCountComparator());
}

我怎样才能同时包含子网站标签?我还需要资产发布者来显示子站点内容。欢迎任何选项。

没有这样的内置函数。你将不得不找到所有使用 GroupLocalServiceUtil.getGroups(long companyId, long parentGroupId, boolean site) 的子组(可能是递归的),解析所有带有 AssetTagServiceUtil.getGroupsTags(long[] groupIds) 的标签并自行排序和切割。