条件付きレンダリング用のカスタムパーソナライズルールを追加
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
Sitecore条件付きレンダリングに使えるいくつかのデフォルトのパーソナライズルールが含まれています。既存のルールで対応できない特定のニーズがある場合は、自分でパーソナライズルールを作成できます。このトピックでは、Defaultデバイス上で条件付きレンダリングに使えるカスタムパーソナライズルールの作成方法を説明します。
カスタムルールを追加してください
-
sitecore/system/Settings/Rules/Definitions/Tagsで、右クリックでタグを押し、「>タグ****を挿入」をクリックしてから、新しいタグの名前を入力します。
-
/sitecore/system/Settings/Rules/Definitions/Elementsでは、Elementsを右クリックして「Element Folder >挿入」をクリックすると、ルール要素フォルダを作成できます。
-
新しく作成した要素フォルダを右クリックし、「条件を挿入」>「条件」をクリックし、新しい条件の説明名を入力します。
-
新しい条件の テキスト フィールドには、ルールを使う人のユーザー向けテキストとルール条件を作成する入力フィールドの組み合わせを入力します。例えば、「クエリ文字列パラメータが値と比較される場合」のように、下線付きのテキストが条件を表しています。各条件を4つのカンマ区切られた値を含む正方形括弧のペアで定義します。
-
条件を実装する.NETクラスのプロパティ名です。ユーザーが条件の値を入力すると、その値は.NETクラスプロパティに割り当てられます。
-
あらかじめ定義された機能を含むマクロの名前です。例えば、ユーザーが整数を選択できるユーザーインターフェースです。これを空にしておくと、デフォルトのインターフェースが使われます。既存のマクロを使えば、例えば文字列演算子を使えます:
where the current contact's AreaName,,,Area Name Key,,,Key OperatorId,StringOperator,,compares to RuleString,,,specific value
!注マクロを /sitecore/system/Settings/Rules/Definitions/Macrosで定義します。
-
ユーザーインターフェースに関連するURLパラメータを、マクロでインターフェースを作成する場合に指定します。例えば、選択木のルートとして /sitecore/Content/Home項目を指定するには、root=/sitecore/Content/Homeと入力します。URLパラメータが期待できない場合は、このパラメータを空にしても構いません。
-
ルールセットエディターで表示するテキスト。ユーザーが値を選択すると、テキストはそれに応じて変化します。
-
-
新しい条件の 型 フィールドに、条件を実装する.NETクラスの完全修飾名を以下の形式で入力します: namespace, assembly name。

-
新しい要素フォルダで 「Tags > Default」をクリックし、ステップ1で作成したタグを割り当てます。
-
ルールセットエディターの 条件付きレンダリングにルールを表示するには、/sitecore/system/Settings/Rules/Conditional Renderings/Tags/Defaultを開き、新しいタグを 条件付きレンダリング タグに割り当ててください。
-
最後に、Sitecoreのbinフォルダに、条件を実装する.NETクラスを含むDLLを追加します。名前空間とクラス名が上記のTypeフィールドで指定された値と一致していることを確認してください。.NETクラスは以下のいずれかのクラスから継承する必要があります:
- ブール条件を実装するには、 Sitecore.Rules.Conditions.WhenConditionを使用します。
- 文字列の値を比較するには、 Sitecore.Rules.Conditions.StringOperatorConditionを使用します。
- 他のタイプの値を比較するには、 Sitecore.Rules.Conditions.OperatorConditionを使用します。
プロセスを完了すると、ルールはSitecoreルールセットエディターで利用可能になります。
例えば、以下のテキストです:

結果は以下の通りです:
