2つのリピーターを持つWebパーツゾーンがあります。各リピーターは同じパス '/ Processes /%'を使用します。 '/ Processes /%'に子ページがない場合、ウェブパーツゾーン全体を非表示にする最良の方法は何ですか?子ページが存在しない場合、2つのリピーターを含むWebパーツゾーンを非表示にする
私が確認しているページは、ページの下にはなく、子ページの下に直接存在しません。特定のパスの下で孫ページを確認するにはどうすればよいですか? '/ Processes /%'?
2つのリピーターを持つWebパーツゾーンがあります。各リピーターは同じパス '/ Processes /%'を使用します。 '/ Processes /%'に子ページがない場合、ウェブパーツゾーン全体を非表示にする最良の方法は何ですか?子ページが存在しない場合、2つのリピーターを含むWebパーツゾーンを非表示にする
私が確認しているページは、ページの下にはなく、子ページの下に直接存在しません。特定のパスの下で孫ページを確認するにはどうすればよいですか? '/ Processes /%'?
あなたは正しいドキュメントにアクセスするDocuments
マクロを使用し、それが子供を持っているかどうかを確認できます。
あなたProcesses
ページのエイリアスパスは/Processes
あり、そしてあなたはそれが子ページ(/Processes/%
)があるかどうかを確認したい場合は、次のエイリアスパスが/MyPage/Processes
ある場合
{% Documents["/Processes"].NodeHasChildren %}
(および/MyPage/Processes/%
下にある子どもを) :
{% Documents["/MyPage/Processes"].NodeHasChildren %}
あなたは、あなたのWebパーツゾーンの「可視」プロパティにマクロとしてそれを使用することができます。
ウェブパーツゾーンの可視性プロパティにマクロを入力します。
{%CurrentDocument.NodeHasChildren%}
ありがとう、私は実際に "孫"のページをチェックしています。ページには、私が探している実際のページを含む「フォルダ」があります。だからMyPage/Processes/ChildPage - これらの孫のページを確認する必要があります – tylerpenney
リピーターにはレコードが自動的にそれを隠し財産が見つかっていない場合は非表示]を持っていますが、あなたが本当にchrandchildrenを探す必要がある場合には、通過しなければなりませんループ内のすべての子ページは:
{%
result = false;
foreach (p IN CurrentDocument.Children) {
if (p.NodeHasChildren) {
return true;
}
}
return result;
%}
ありがとう、これは役に立ちます。私が変える唯一のことは、それが子供を見つけたら、休憩を加えることだろう。 – tylerpenney
returnは関数を壊すので、子が見つかると処理が中止されます – JanH
素晴らしい提案です。パスがより動的になるように["./Processes"]を追加する必要がありますか? – tylerpenney