---
title: "カスタム条件を作成する"
slug: "create-a-custom-condition"
abstract: "Sitecore Personalizeで実験や体験をリアルタイムの行動に基づいてフィルタリングするカスタム条件を作成し、ターゲットを絞ったマーケティングを強化しましょう。"
---
# カスタム条件を作成する

[条件](https://doc.sitecore.com/personalize/ja/users/sitecore-personalize/developer-center/conditions/conditions.html "Conditions")は、リアルタイムの訪問者の行動に基づいて体験や実験をフィルタリングすることを可能にします。

JavaScriptに慣れているなら、自分でロジックを書いて手動でカスタム条件を作ることができます。既存の条件をすぐに変更したりカスタムしたり、まったく一から新しく作ったりできます。

Sitecore Cloud Portalで*User*、*Developer*、または*Admin*アプリの役割を持つユーザーはカスタム条件を作成できます。これらの条件は手動で作成するか、[コードアシスタン](https://doc.sitecore.com/personalize/ja/users/sitecore-personalize/ai-in-personalize/code-assistant.html "Code Assistant") トの助けを借りて作成できます。

> !注もし組織がSitecoreAIライセンスを持っている場合は、Sitecore PersonalizeとSitecoreAIページビルダーの両方でカスタム条件を作成できます。Sitecore Personalizeで作成されたカスタム条件は、SitecoreAIの [条件](https://doc.sitecore.com/sai/en/users/sitecoreai/specifying-variables-for-conditions.html) 変数を指定することでも利用可能です。

始める前に、以下のトピックに精通することをお勧めします。

-   [パラメータの種類](https://doc.sitecore.com/personalize/ja/users/sitecore-personalize/developer-center/conditions/create-a-custom-condition/types-of-parameters-for-conditions.html "Types of parameters for conditions")、 [コンテキストパラメータ](https://doc.sitecore.com/personalize/ja/users/sitecore-personalize/developer-center/conditions/create-a-custom-condition/context-parameters-for-conditions.html "Context parameters for conditions") 、条件で使われる [要素](https://doc.sitecore.com/personalize/ja/users/sitecore-personalize/developer-center/conditions/create-a-custom-condition/condition-elements.html "Condition elements") 。
-   [サポート済みおよびサポートされないJavaScript関数](https://doc.sitecore.com/personalize/ja/users/sitecore-personalize/introduction-to-decisioning-in-sitecore-personalize/managing-programmable-decisions/supported-and-unsupported-javascript-entities/supported-and-unsupported-javascript-entities.html "Supported and unsupported JavaScript entities")
-   [カスタム条件を作るためのベストプラクティス](https://doc.sitecore.com/personalize/ja/users/sitecore-personalize/developer-center/conditions/best-practices-for-creating-custom-conditions.html "Best practices for creating custom conditions")。

手動でカスタム条件を作成するには:

1.  ナビゲーションメニューで「 **Developer center** 」> **「Conditions**」をクリックします。
    
2.  **「作成**」をクリックします。あるいは[、既存の条件を複製して編集](https://doc.sitecore.com/personalize/ja/users/sitecore-personalize/developer-center/conditions/manage-conditions.html "Manage conditions")することもできます。
    
3.  新しい状態の名前を入力し、「 **作成**」をクリックします。
    
4.  コードエディターで**「編集**」をクリックして![The edit icon](https://doc.sitecore.com/api/markdown-image/personalize/ja/users/sitecore-personalize/images/edit_pencil.png)JavaScriptを設定します。JavaScriptコードを自動的にフォーマット・インデントするには、「**JS ![Format JS icon](https://doc.sitecore.com/api/markdown-image/personalize/ja/users/sitecore-personalize/images/preetify.png)フォーマット**」をクリックしてください。
    
    レスポンス本体にオブジェクトを返すことを推奨しました。他の条件から [コードをコピー](https://doc.sitecore.com/personalize/ja/users/sitecore-personalize/developer-center/conditions/manage-conditions.html "Manage conditions") して始めることもできます。
    
    > !tipレスポンスで返される値は、バリアントAPIレスポンスから「filter」としてアクセスできます。
    
5.  右ペインの **「Data** 」タブをクリックしてゲストデータモデルの属性やパスをコピーし、JavaScriptエディターに貼り付けてください。 ![Edit icon](https://doc.sitecore.com/api/markdown-image/personalize/ja/users/sitecore-personalize/images/edit_pencil.png) をクリックして、以下のいずれかを選択します:
    
    -   ゲストタイプに基づくランダムなゲストの属性を見るには、検索ボックスをクリックし、「 **クイックセレクトカスタマー**」または「**クイックセレクトビジター**」を選択します。システムは最近アクティブだったゲストを選択します。
        
    -   特定のゲストからフィールドを選択するには、検索ボックスにそのゲストの固有の識別子を入力します。例えば、セグメントメンバーシップを動的データとして使いたい場合は、そのセグメントのメンバーであるゲストを検索してください。例えば、メールアドレス、他のユニークな識別子、ブラウザIDを使ってゲストを検索できます。
        
        > !ヒントコードの設定やテスト時によく使うゲストがいる場合は、**スター** アイコンをクリックしてゲストをブックマークし、検索しなくて済むようにしましょう。
        
6.  JavaScriptのコーディングペインで入力パラメータを定義すると、パラメータ名は **設定** タブに表示されます。
    
7.  変更を適用するには **「保存** 」をクリックしてください。カスタム条件を保存した後は、適切なパラメータ名を使って [条件出力を定義](https://doc.sitecore.com/personalize/ja/users/sitecore-personalize/developer-center/conditions/create-a-custom-condition/create-a-custom-condition.html#UUID-2998a79d-36c4-00bc-c9c1-8af9323ac87d_section-idm4549371569148833363491053178 "Define the condition output") してください。
    

## 条件出力を定義します

条件の出力は、記述的なフレーズと入力パラメータの組み合わせです。これは、ユーザーが実験や体験に適用する条件を選択するときに目にするものであり、以下に示されています。

![Selecting a condition](https://doc.sitecore.com/api/markdown-image/personalize/ja/users/sitecore-personalize/images/selectCondition.png)

「*訪問は*現在の訪問中の*ページ**と比較*されるページから開始されていません」 

この例では、*has/hast*、*compares*、*page*は、ユーザーが実験や体験に条件を適用する際に選択する入力パラメータです。条件の出力は、文の構成に似た表現で表現することをお勧めします。

条件出力を定義すると:

1.  **設定**タブで「**出力**」オプションを選択してください。
    
2.  テキストとパラメータを **「構成** 」テキストボックスに入力してください。これは、ユーザーが実験や体験に条件を適用した際に見るものです。入力すると、出力が **プレビュー** セクションに表示されます。有効なパラメータは太字で表示されています。ユーザーが選択可能な入力パラメータの値を見るには、「 **入力** 」オプションをクリックしてください。
    
    パラメータは大文字に細かく区別され、例えばpath.name。
    
    > !注JavaScriptコーディングエディタで定義されているすべての条件パラメータは、**構成**テキストボックスに含めなければなりません。JavaScriptで定義されているが構成テキストボックスに含まれていないパラメータには赤い感嘆符が付いています。パラメータ名をコピーして構成テキストボックスに貼り付けるには![pers\_copyParam.png](https://doc.sitecore.com/api/markdown-image/personalize/ja/users/sitecore-personalize/images/pers_copyParam.png)をクリックします。
    > 
    > **構成**テキストボックスに含まれて有効なパラメータには緑色のチェックマークが付いています。
    
    この画像は、**\[ has**input parameter(入力パラメータ)がJavaScriptで定義され、**構成**テキストボックスに含まれていることを示しています。緑色のチェックマークが表示され、入力パラメータが正常に含まれていることを示します。**パラメータとページ**パラメータの比較は赤い感嘆符で表示されています。これは**、構成**テキストボックスに含まれるものの、二括弧で囲まれておらず、構文が無効だからです。構文を有効にし緑色のチェックマークを表示するには、パラメータを二重四角括弧で巻きます。
    
    ![Configuring a condition](https://doc.sitecore.com/api/markdown-image/personalize/ja/users/sitecore-personalize/images/condition_firstpg.png)
    
3.  条件出力のプレビューは **設定** タブに表示されます。これは、実験や体験に条件を適用した際にユーザーが条件をどのように見るかを見るのに役立ちます。 **入力オプションをクリックすると** 、ユーザーが条件のために選択できるパラメータ値が表示されます。
    
4.  ゲストデータを使って[条件をテスト](https://doc.sitecore.com/personalize/ja/users/sitecore-personalize/developer-center/conditions/test-a-condition/test-a-condition.html "Test a condition")するには「**テスト**」をクリックしてください。エラーを特定し、最適なパフォーマンスを確保するために、[公開](https://doc.sitecore.com/personalize/ja/users/sitecore-personalize/developer-center/conditions/create-a-custom-condition/manage-conditions.html#UUID-04369032-3c1b-5080-c03e-3d6998089166_section-idm4582172472156833683000622423 "Publish")前に条件をテストすることをお勧めします。