「SitecoreMVCソリューションは、すべてのプレゼンテーションコンポーネントに同じルールセットを適用する条件付きレンダリングの形式であるグローバル条件付きレンダリングルールをサポートしていません。個々のプレゼンテーションコンポーネントに条件付きレンダリングルールを適用できますが、次のような条件付きレンダリングルールを定義することはできません。 Webフォームソリューションでできるように、すべてのプレゼンテーションコンポーネントに適用します。」 出典:ジョンウェスト
したがって、別の戦術を使用する必要があります。
これを正しく理解していれば、条件付きレンダリングルールはアイテムレベルで構成されています。つまり、すべてのアイテムにグローバルルールを設定する必要があります。
テンプレートの継承とStandard Values
:を使用して、これを自動化できます。
- 標準値を使用して基本テンプレートを作成します。
- 標準値アイテムのプレゼンテーションの詳細でレンダリングを構成します(ここで条件付きレンダリングルールを設定します)。
- この条件付きレンダリングルールを必要とするすべてのテンプレートをベーステンプレートから継承します。
- 標準値の表示の詳細も継承されます。
このソリューションで唯一注意が必要なのは、アイテムを作成する前に、すべてのテンプレートと標準値を設定する必要があることです。理論的にはこれは問題ではありませんが、アイテムの作成後に変更すると、標準値の表示の詳細の継承が正しく機能しないという奇妙な症状が発生しました。