---
title: "カスタム条件を作成する"
slug: "create-a-custom-condition"
abstract: "JavaScriptのカスタム条件の作成方法を説明します。"
---
# カスタム条件を作成する

JavaScriptに詳しい方は、カスタム条件を作成できます。条件は、マーケターが完全なオーディエンスエクスポートで使用されるセグメントをさらにフィルタリングできるようにします。

条件を公開した後、マーケターはそれをフィルターとしてオーディエンスエクスポートに適用できます。オーディエンスエクスポートの出力には、その条件を満たすセグメントのゲストのみが含まれます。

始める前に、パラメータ[の種類、](https://doc.sitecore.com/cdp/ja/users/sitecore-cdp/developer-center/conditions/create-a-custom-condition/types-of-parameters-for-conditions.html "Types of parameters for conditions")[コンテキストパラメータ](https://doc.sitecore.com/cdp/ja/users/sitecore-cdp/developer-center/conditions/create-a-custom-condition/context-parameters-for-conditions.html "Context parameters for conditions")、条件で使われる[要素](https://doc.sitecore.com/cdp/ja/users/sitecore-cdp/developer-center/conditions/create-a-custom-condition/condition-elements.html "Condition elements")、そして[サポートされている・サポートされないJavaScript関数](https://doc.sitecore.com/cdp/ja/users/sitecore-cdp/developer-center/conditions/supported-and-unsupported-javascript-entities/supported-and-unsupported-javascript-entities.html "Supported and unsupported JavaScript entities")についてよく理解しておくことをお勧めします。

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

1.  ナビゲーションペインで「 **Developer center** 」> **「Conditions**」をクリックします。
    
2.  **「作成**」をクリックします。あるいは[、既存の条件を複製して編集](https://doc.sitecore.com/cdp/ja/users/sitecore-cdp/developer-center/conditions/manage-conditions.html "Manage conditions")することもできます。
    
3.  新しい状態の名前を入力し、「 **作成**」をクリックします。
    
4.  コードエディターで **「編集** 」をクリックしてJavaScriptの設定を行います。レスポンス本体にオブジェクトを返すことを推奨しました。他の条件から [コードをコピー](https://doc.sitecore.com/cdp/ja/users/sitecore-cdp/developer-center/conditions/manage-conditions.html "Manage conditions") して始めることもできます。
    
    > !tipレスポンスで返される値は、バリアントAPIレスポンスから「filter」としてアクセスできます。
    
5.  コーディングペインの **「Data** 」タブをクリックしてゲストデータモデルの属性やパスをコピーし、JavaScriptエディターに貼り付けてください。 ![CDP\_webtemp\_pencilicon.png](https://doc.sitecore.com/api/markdown-image/cdp/ja/users/sitecore-cdp/images/CDP_webtemp_pencilicon.png) アイコンをクリックし、以下のオプションのいずれかを選択してください:
    
    -   ゲストタイプに基づくランダムなゲストの属性を見るには、検索ボックスをクリックし、「 **クイックセレクトカスタマー**」または「**クイックセレクトビジター**」を選択します。システムは最近アクティブだったゲストを選択します。
        
    -   特定のゲストからフィールドを選択するには、検索ボックスにそのゲストの固有の識別子を入力します。例えば、セグメントメンバーシップを動的データとして使いたい場合は、そのセグメントのメンバーであるゲストを検索してください。例えば、メールアドレス、他のユニークな識別子、ブラウザIDを使ってゲストを検索できます。
        
        > !ヒントコードの設定やテスト時によく使うゲストがいる場合は、**スター** アイコンをクリックしてゲストをブックマークし、検索しなくて済むようにしましょう。
        
6.  JavaScriptのコーディングペインで入力パラメータを定義すると、右側の**Configuration**タブにパラメータ名が表示されます。次のセクションで説明するように、パラメータ名を使って条件出力を定義する必要があります。
    

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

条件の出力は、記述的なフレーズと入力パラメータの組み合わせです。ユーザーがオーディエンスエクスポートで適用する条件を選択すると、以下が表示されます。

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

この例では、*has/hasd*、*compares to*、*page*は、ユーザーがオーディエンスエクスポート時に条件を適用する際に値を選択する入力パラメータです。条件出力は、文の構成に似た表現で表現することをお勧めします。

出力を定義すると:

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