1

カスタム ルールを 2 つの異なる方法で適用しようとしています。パーソナライズボタンをクリックしてそこにルールを適用すると機能しますが、レンダリングをクリックしPresentation -> details -> layout details -> control propertiesてそこにあるパーソナライズタブでルールを有効にすると機能しません)。この場合、この方法が機能しない理由を知りたいですか?

私がやっていることの詳細は次のとおりです。

条件付きレンダリングを使用してパーソナライゼーションを実装しています。これは Sitecore 8 ソリューションで、レイアウトとレンダリングの両方が MVC です。ルール エンジンでカスタム条件コードをセットアップしました ([設定] -> [ルール])。最終的なルールは、ルール セット エディターで次のように表示されます。

Rule 1
Where the Parameter country has a value that is equal to sg set data source to Singapore

Marketing Center -> Personalization -> Rules同じカスタム条件を使用して、条件付きレンダリング ルールも定義しました

パーソナライゼーション ボタンを押してデバイス エディターでルール セットを直接適用し、そこで構成すると、機能します。ただし、コントロール プロパティで条件付きレンダリング ルールを有効にすると機能しません。なんで?

編集

どこかで、グローバル ルールが MVC コンポーネントで機能していないことを読みました。これが問題を明らかにする方法ですか?その場合、Marketing Center のどの領域が MVC コンポーネントで機能しないのですか?

4

1 に答える 1

5

マーケティング センターで定義され、コントロール プロパティを介して適用されるルールは、グローバル ルールとして適用されるため、Sitecore MVC では機能しません。

Sitecore MVC ソリューションは、グローバルな条件付きレンダリング ルールをサポートしていません。これは、すべてのプレゼンテーション コンポーネントに同じルール セットを適用する条件付きレンダリングの形式です。個々のプレゼンテーション コンポーネントに条件付きレンダリング ルールを適用できますが、Web フォーム ソリューションのようにすべてのプレゼンテーション コンポーネントに適用される条件付きレンダリング ルールを定義することはできません。

詳細については、 http : //www.sitecore.net/learn/blogs/technical-blogs/john-west-sitecore-blog/posts/2010/10/sitecore-mvc-crash-course.aspx をご覧ください。

それらは WebForms 実装で引き続き機能します。ルールを個別に適用するか、MVC ソリューションでルールを適用するための回避策を作成する必要がありますが、これはパフォーマンス上の理由から悪い考えになる可能性があります。

于 2016-04-14T09:56:01.763 に答える