ページ内の特定のパラメーター (クエリ文字列や要求パラメーターなど) に従って、さまざまなポートレットを表示するある種のテンプレートを作成しようとしています。
次のコードがあります。
#if( $request.getParameter('sneiders') == 'snuffles' )
<div class="col1" id="col1">$processor.processColumn("col1")</div>
#else
<div class="col2" id="col2">$processor.processColumn("col2")</div>
#end
「col2」列のポートレットは正しく表示されますが、/my/url?sneiders=snuffles に表示されるはずの「col1」列のポートレットが正しく表示されません。どういうわけか、liferay は css クラス portlet-static を使用して空のポートレットを出力するだけです
ただし、少し変更すると:
#if( $request.getParameter('sneiders') == 'snuffles' )
<div class="col1" id="col1">$processor.processColumn("col1")</div>
#elseif( $request.getParameter('sneiders') == 'snuffzen')
<div class="col2" id="col2">$processor.processColumn("col2")</div>
#else
<div class="col1" id="col1">$processor.processColumn("col1")</div>
<div class="col2" id="col2">$processor.processColumn("col2")</div>
#end
ポートレットはどのような状況でも正しく表示されるため、すべての列を処理する「デフォルト」のケースが必要だと思います。
誰かがこの問題に遭遇しましたか? それは問題ですか、それとも間違ったことをしていますか?
どんな助けでも大歓迎です。よろしくお願いします