問題
- Widget Page Templateがある場合、Freemarkerテンプレートから
themeDisplay.getScopeGroupId()
メソッドを使用して、オリジナルサイトのgroupId
を取得しようとすると、異なるgroupId
が取得される。 - 他の方法で復旧させることは可能でしょうか?
Environment
- Liferay DXP 7.1+
解決策
- ウィジェットページテンプレートは、定義上、独自のサイトを作成するため、
themeDisplay.getScopeGroupId()
を使用すると、元のサイトのgroupId
ではなく、(ページテンプレート用に)新たに作成されたサイトのgroupId
を取得します。 - ただし、これらのウィジェットページテンプレートは、ページテンプレートコレクションを通じて、元のサイト(作成場所)に接続されています。
- 元のサイトの
groupId
を取得するには、そのLayoutPageTemplateEntry
から行う必要があります。以下の記事で、出発点として使用できる例があります: