1

ページ プロパティ > 基本に新しい選択タイプ フィールド「テーマ」を追加しました。WCM で同じテンプレートを使用して新しいページを追加すると、「テーマ」オプションも表示されます。これは明らかです。子ページのフィールドを非表示にする方法はありますか?

PSこれは、子ページに同じテンプレートを使用しているためです。

4

2 に答える 2

3

同じテンプレートを使用して、ページ プロパティ ダイアログを異なるものにすることはできません。

あなたができることは、ダイアログをオーバーロードすることです

  • 現在のテンプレートを継承する新しいテンプレートと対応する resourceType コンポーネントを作成します。
  • コンポーネントの最下位の親とは異なるダイアログまたはタブをコピーします。ダイアログがコンポーネントの下の唯一のノードであることを確認してください。
  • ダイアログに必要な変更を加えます。

次に、次のような親ページ プロパティを取得するために、ページ jsp にコードを含める必要があります。

// if the parent page is always a certain level below the root you can use
// currentPage.getAbsoluteParent(3); to get the third page down from the top
// of the current path tree.
Page parentPage = currentPage.getParent();

ValueMap parentPageProperties;

if (parentPage != null) {
    parentPageProperties = parentPage.getProperties();
}

// This tries to get the property 'theme' from the current page. If that fails
// then it tries to get the property from the parent page. If that fails it 
// defaults to blank.
theme = properties.get("theme", parentPageProperties.get("theme", ""));
于 2013-02-22T21:49:36.503 に答える
0

簡単な解決策は、テンプレート/ページ コンポーネントの 2 番目のセットを作成することです。ページ コンポーネント B をリソース タイプとして使用するテンプレート A があるとします。

  • テンプレート X を作成し、allowedParents allowedChildren および allowedPaths プロパティで遊んで、2 つが排他的であるようにします (実際の解決策はコンテンツ アーキテクチャによって異なります)。
  • XにAと同じ称号を与える
  • B を拡張し、独自のダイアログを定義するページ コンポーネント Y を作成します。
  • xtype=cqinclude を使用して、Y のダイアログが B のタブを再利用するようにします (リファレンスについては、基礎ページのダイアログを参照してください)。
于 2013-02-25T13:53:10.140 に答える