1. Search開発者

OrderCloudとの統合

日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

Sitecore SearchとOrderCloudの組み込み統合を使用して、データがOrderCloudされた後、データを簡単にSearchに送信できます。組み込みの統合により、製品やカテゴリのデータ、マルチロケーション小売業者の店舗データ、その他のエンティティなどのデータを同期するインフラストラクチャが自動的にセットアップされます。統合を使用するには、まずドメインを設定してから、製品の同期をトリガーする必要があります。

これにより、OrderCloud製品の可視性と価格設定ルールが、Searchによって提供される検索エクスペリエンスに確実に適用されます。

統合は、完全同期と増分同期に使用できます。増分同期を選択した場合、完全なカタログではなく、更新された製品のみが同期されます。

メモ

OrderCloudが提供するすぐに使用できる製品同期とプロキシは、ほとんどのコマース ユース ケースを処理しますが、より複雑なシナリオでは、独自のプロセッサをホストすることをお勧めします。たとえば、マルチレベル (店舗またはグループ) 検索エクスペリエンスに関する要件がある場合は、カスタム プロセッサを使用することをお勧めします。

このチュートリアルでは、次の方法について説明します。

始める前に
  • Marketplace AdminロールとProductSyncConfigAdminおよびDeliveryConfigAdminのアクセス許可を持つOrderCloudにアクセスできることを確認します。

  • TechAdminロールでSitecore Searchにアクセスできることを確認します。OrderCloud同期を機能させるには、製品エンティティとその属性がSearchにある必要があります。

属性テンプレートを選択する

検索ドメインを設定するには、属性テンプレートを選択し、OrderCloud同期ターゲットのソースを定義します。APIプッシュコネクタを使用して、OrderCloud増分更新をSitecore Searchに送信できるようにします。

属性テンプレートを選択するには:

  1. Sitecore Searchのメインメニューで、Administration > Domain Settingsをクリックします。

  2. General Settingsタブで、Entities > Editをクリックします。

    手記

    General SettingsタブにEntitiesが表示されない場合は、ドメインが複数のエンティティに対して有効になっていません。

  3. Productなど、同期するエンティティClick。

  4. Attribute Templateドロップダウンメニューで、OrderCloudデータモデルに一致する属性をマッピングするテンプレートを選択します。

    • 製品エンティティの場合は、Order Cloud Product Spec 2テンプレートを選択します。

    • その他のエンティティの場合は、Base Attribute Templateを選択します。

  5. OrderCloudの拡張プロパティを使用してビジネス固有のプロパティをOrderCloudデータモデルに追加する場合は、それらをSitecore Searchの属性として追加します。

  6. APIプッシュ型のソースを作成します。

  7. Click Save

(オプション)OrderCloud XPプロパティの新しい属性を定義する

同期されたOrderCloudエンティティのAPI応答でXPプロパティ を返したり、フィルター処理、ファセット、ルール、その他の検索エクスペリエンスに使用したりする場合は、これらのXPプロパティをSitecore Searchの属性として設定する必要があります。

XPプロパティに新しい属性を設定するには:

  1. メニューバーで、Administration > Domain Settings > Attributesをクリックします。

  2. Entityドロップダウンメニューで、Productを選択します。

  3. Click Add Attribute 、ネストを表すアンダースコア付きの小文字を使用して属性名を入力します。

    たとえば、OrderCloudのxp.Brandという属性は、Sitecore Searchでxp_brandという名前を付ける必要があります。

  4. 製品のサムネールをSitecore Searchで表示するには、OrderCloudにxp.ThumbnailImageUrlというXPプロパティを作成します。

OrderCloud配信設定の作成

属性テンプレートを選択してソースを作成してドメインを設定したので、OrderCloud配信設定を作成する必要があります。

配信設定を作成するには:

  1. OrderCloudにログインし、API Consoleをクリックします。

  2. メインメニューのIntegrationsセクションで、Delivery Configurationsをクリックします。

  3. 上部のドロップダウンメニューで、POST操作を選択して、新しい配信設定を作成します。

  4. Enabledチェックボックスをオンにします。

  5. Search Ingestionセクションで、次のフィールドに入力します。

    • Domain - SearchドメインID。

    • Source - SearchソースID。

    • Endpoint - SearchソースエンドポイントURL。

    • Entity - productと入力します。

    • API Key - SearchソースAPIキー。

    手記
    • ドメインIDを見つけるには、メニューバーでHomeをクリックし、ドメイン名にカーソルを合わせます。

    • ソースID、エンドポイントURL、およびAPIキーを見つけるには、メニュー バーでSourcesをクリックし、ソースをクリックします。 Source Settingsページで、Source Informationをクリックします。

  6. Click Send

  7. メインメニューのIntegrationsセクションで、Product Synchronizationをクリックします。

  8. 上部のドロップダウンメニューで、製品同期を作成または更新するためのPUT操作を選択します。

  9. Request Bodyで、Sync Product Changedチェック ボックスをオンにして、製品の作成または更新時に製品を同期し、Sync Product Deletedチェック ボックスをオンにして、製品を削除時に同期します。

  10. Delivery Config IDで、IDを入力し、Sendをクリックします。

他のSitecore Searchエンティティ( categoriesstores/suppliersinventoryなど)に対してこのプロセスを繰り返します。 Entity Synchronizationエンドポイントを使用して、これらをそれぞれ作成します。

製品同期をトリガーする

OrderCloudで接続を設定したら、OrderCloudからSitecore Searchへの同期をトリガーする準備が整います。

手記

カタログまたはカテゴリで完全同期を実行する前に、1つの製品で増分同期を実行して、設定が正しいかどうかを確認することをお勧めします。これを行うには、PATCHクエリを実行して製品を新しい値で更新し、増分同期を実行します。

同期をトリガーするには:

  1. OrderCloudで、Self-service > Sync toolsをクリックします。

    手記

    OrderCloud Portalを使用している場合は、Marketplaces > Product syncに移動します。

  2. カタログ全体を同期するには、Catalog IDフィールドにIDを入力します。

    または、1つのカテゴリのみを同期するには、Catalog IDフィールドにIDを入力し、Category IDフィールドにIDを入力します。

  3. I’m not a robotチェックボックスをオンにします。

  4. Click Submit

  5. Sitecore Searchのメインメニューで、Content Collectionをクリックします。

  6. 同期されたエンティティClick (たとえば、Product) です。このページには、OrderCloudの製品が一覧表示されます。

    手記

    Sync Product ChangedオプションやSync Product Deletedオプションを選択した場合、OrderCloudで製品を作成、変更、または削除するたびに、それらの変更はSearchに同期されます。

Sitecore Searchでは、「 Sources」をクリックすると、ソースの横に感嘆符が表示され、インデックス作成のキューに登録されていることを示すようになりました。インデックス作成は、ソースのサイズによっては完了するまでに時間がかかる場合があります。

また、Analytics > Sources > Overviewに移動して、さまざまなメトリックに関するすべてのソースの詳細情報を表示することもできます。特定のソースの詳細を表示するには、ソースのリストからそのソースを選択します。これにより、ソース、前回の実行の概要、および実行されたジョブの数に関する情報が表示されます。特定のジョブの詳細を表示するには、グラフまたはJob Run Listからジョブを選択します。

(オプション)Searchプロキシを設定する

Sitecore Searchプロキシを使用すると、OrderCloudから正確な製品の可視性と価格を取得できます。また、Searchで必要な別のシステムに保存されているマルチロケール属性と非OrderCloud属性を同期することもできます。これはオプションのステップです。OrderCloudからデータを同期するためにプロキシは必要ありません。これは、商品ごとに複数の価格がある複雑なマーケットプレイスがある場合や、商品の可視性が限られている場合にのみ使用してください。

プロキシを設定するには:

  1. OrderCloudの右上隅にあるMarketplace名のドロップダウン メニューで、OrderCloud RegionMarketplace IDをメモします。

  2. Searchのメニュー バーでSourcesをクリックし、ソースをクリックします。 Source Settingsページで、Source Informationをクリックし、Search Ingestion API URLをメモします。

  3. この情報を使用してサポートケースをログに記録します。

プロキシを使用して正確な製品と価格を返す

購入者のフロントエンドからプロキシエンドポイントに送信されるペイロードは、以下に示す追加のordercloudセクションを除き、Searchのペイロードと同じです。このプロキシは、現在のユーザーの表示ルールを指定されたフィルターに追加し、適切な価格を適用することで、Searchで利用可能なすべての機能を利用できるようになります。

{ 
  "context": { 
    "page": { 
      "uri": "/" 
    }, 
    "user": { 
      "uuid": "173929009-e4-05-47-1p-boo1kknmlw-1708358871002" 
    } 
  },
  "ordercloud": { 
      "sellerId": "12345", 
      "requiredInventoryLocations": [ 
            "*-0044" 
        ]  }, 
  "widget": { 
    "items": [ 
      { 
        "rfk_id": "rfkid_6", 
        "search": { 
          "content": {}, 
          "suggestion": [ 
            { 
              "name": "auto_suggester", 
              "max": 6 
            } 
          ], 
          "limit": 6 
        }, 
        "entity": "product" 
      } 
    ] 
  } 
} 

プロキシを呼び出すには、ベアラートークンが必要です。これは、有効なOrderCloudユーザートークンを使用してOrderCloudのoauth/userinfoエンドポイントを呼び出すことで取得できます。これにより、プロキシの呼び出しに使用できるすべてのユーザーのコンテキスト情報を含むベアラー トークンが返されます。

プロキシエンドポイントの形式: https://uswest-integrations.ordercloud.io/api/v1/search/{domain}

リージョン固有のエンドポイント:

  • US West - https://uswest-integrations.ordercloud.io/

  • Europe West - https://westeurope-integrations.ordercloud.io/

  • US East - https://useast-integrations.ordercloud.io/

  • Japan East - https://japaneast-integrations.ordercloud.io/

  • Australia East - https://australiaeast-integrations.ordercloud.io/

正しい商品と価格を正しい購入者に表示する必要があることだけが必要な場合、この統合はプロキシ方式を使用してこれを行います。価格による並べ替えや商品在庫に関するカスタムルール(埋め込みやブーストなど)など、追加のユースケースがある場合は、Sitecore Searchのマルチストア/マルチグループ機能も使用する必要があります。

この記事を改善するための提案がある場合は、 お知らせください!