問題
- どのウィジェットテンプレートが使用中であるかを知るには?
- ウィジェットテンプレートがLiferayインスタンス全体で使用されている場所を確認するにはどうすればいいですか?
環境
- Liferay DXP
解像度
- Liferay DXP 7.4のユーザーは、UIを使ってどのテンプレートが使われているか、どこで使われているかを調べることができます。
- 製品メニューへ移動 > デザイン > テンプレート > ウィジェットテンプレート
- ここで使用件数を見ることができ、さらにアクションボタンをクリックすると、そのテンプレートの使用件数を見ることができます。
-
- 製品メニューへ移動 > デザイン > テンプレート > ウィジェットテンプレート
- Liferay DXP 7.0-7.3のユーザーには、groovyスクリプト(ここに添付)を使うことができます。
- コントロールパネル > サーバー管理 > スクリプトに移動し、添付のスクリプトを貼り付けます。
-
List<com.liferay.portal.kernel.model.PortletPreferences> portletPreferences = com.liferay.portal.kernel.service.PortletPreferencesLocalServiceUtil.getPortletPreferences();
for (com.liferay.portal.kernel.model.PortletPreferences portletPreference : portletPreferences) {
String preferencesXML = portletPreference.getPreferences();
javax.portlet.PortletPreferences jxPortletPreferences = com.liferay.portal.kernel.portlet.PortletPreferenceskernel.portlet.PortletPreferencesFactoryUtil.fromDefaultXML(preferencesXML);
String displayStyle = jxPortletPreferences.getValue("displayStyle", "");
if (displayStyle.isEmpty()) {
continue;
}
com.liferay.portal.kernel.model.Layout layout = com.liferay.portal.kernel.service.LayoutLocalServiceUtil.fetchLayout(portletPreference.getPlid());
out.println( "テンプレート名: " + displayStyle);
out.println( "レイアウト名:" + layout.getNameCurrentValue() + " Plid:" + portletPreference.getPlid());
out.println( "PortletId:" + portletPreference.getPortletId());
out.println( "----");
}.
追加情報