---
title: "コンテンツ項目の同期"
slug: "synchronize-content-items"
abstract: "新しいCommerceコンテンツ項目(カスタムCommerce Termsなど)を作成した後、SitecoreコンテンツエディターとCommerce Engine間でデータを同期させる方法について、例えばBusiness Toolsのユーザーインターフェースに表示させる方法。"
---
# コンテンツ項目の同期

新しいCommerceコンテンツアイテムを追加したり、Sitecoreコンテンツエディター内の[Commerceコントロールパネル](https://doc.sitecore.com/xp/ja/developers/101/sitecore-experience-commerce/commerce-control-panel.html "Commerce Control Panel") で既存アイテムを変更したりする場合、Sitecoreコンテンツエディターで定義されたコンテンツアイテムをCommerce Engineデータベースのデータと同期しなければなりません。例えば、新しいCommerce Term(Business Toolsユーザーに表示する新しいアイテム)を追加する場合、その新しいコンテンツアイテムをBusiness Toolsのユーザーインターフェースに表示できるように同期しなければなりません。

Sync content itemサンプルAPIリクエストを使って[単一のコンテンツ項目を同期](https://doc.sitecore.com/xp/ja/developers/101/sitecore-experience-commerce/synchronize-content-items.html#UUID-38bd7b87-c2be-c349-415d-01f328207c9d_section-5d8910a5ce41f-idm46002382405664 "Synchronize a single content item")できます。もし複数の新しいまたは修正されたコンテンツ項目がある場合は、Sync content pathサンプルリクエストを使って[すべてのコンテンツアイテムを同期する必要があります](https://doc.sitecore.com/xp/ja/developers/101/sitecore-experience-commerce/synchronize-content-items.html#UUID-38bd7b87-c2be-c349-415d-01f328207c9d_section-5d8921ce9f48e-idm45749439070080 "Synchronize all content items in the Control Panel")。両方のリクエストは、[Sitecore Commerce Engine SDK](https://doc.sitecore.com/xp/ja/developers/101/sitecore-experience-commerce/sitecore-commerce-engine-sdk.html "Sitecore Commerce Engine SDK")に含まれるPostmanサンプルコレクションで利用可能です。

以下の手順は、Postmanアプリケーションをインストールし、Sitecore Commerce Engine SDKからサンプルコレクションを取り込み、環境を設定し、Commerce Engine APIにアクセスするためのベアラートークンを取得したことを前提としています( [ここで](https://doc.sitecore.com/xp/ja/developers/101/sitecore-experience-commerce/execute-sample-api-calls-in-postman.html "Execute sample API calls in Postman")説明しています)。

## 単一のコンテンツ項目を同期させる

Sync content itemサンプルリクエストは、Postmanで単一のコンテンツSitecore同期を組み合わせるときに使えます。

### 前提条件

PostmanでSync content itemリクエストを使用する前に、Sitecoreコンテンツアイテムパス(URL)を手元に用意してください。PostmanでSync content itemリクエストを呼び出す際に、この情報をパラメータ値として渡す必要があります。以下は、SitecoreコンテンツエディタにおけるCommerceコンテンツアイテムの **コンテンツパス** (URL)の例を示しています。

![The Item path value of a Commerce item in the Sitecore Content Editor.](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/101/sitecore-experience-commerce/images/Commerce_Content_Item_path.png)

Sitecore Content EditorとCommerce Engine間でコンテンツ項目を同期するには:

1.  Postmanを開き、**Postmanコレクション** のパネルで*ContentAPISamples*コレクションを展開します。
    
2.  *Views*フォルダを開き、Sync itemリクエストをクリックします。
    
3.  **ボディ**ペインで、*viewName*と*forAction*パラメータの値がSynchronizeContentItemに設定されているか確認し、**Send**をクリックします。
    
    > !注Sync itemリクエストはエンティティビューの情報を返します。 "Version"のプロパティセクションで、"Value" (以下の例に示されています)に注目してください。この情報はSync content itemリクエストの次のステップで入力として提供する必要があります。
    > 
    > ![The version value property.](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/101/sitecore-experience-commerce/images/SyncContentPath_Version_value.png)
    
4.  *DoActions*フォルダを開き、Sync content itemリクエストをクリックします。
    
5.  **ボディ**パネルで、前のステップで返された値で"Version"を更新し、"Path"プロパティ値をカスタムコマースアイテムのコンテンツアイテムパス(URL)で同期させます。以下は更新が必要なプロパティ値の例です。
    
    ![The "value" property for the content item version and path.](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/101/sitecore-experience-commerce/images/Views_version_and_path.png)
    
6.  **Send**をクリックします。
    
7.  コンテンツアイテムをBusiness Tools利用可能にするには、Redisのキャッシュをフラッシュする必要があります。C:\\Program Files\\Redisに移動し、redis-cli.exeを実行して[flushall](https://redis.io/commands/flushall)コマンドを実行します。
    

## コントロールパネル内のすべてのコンテンツ項目を同期します

Sitecore Content Editor内のCommerce Control Panelに複数のカスタムCommerceアイテムが含まれている場合、*Sync content path* APIサンプルを使ってすべてのCommerce Commerceコンテンツ項目を同期します。

> !注この操作は、コマースエンジンからすべてのコントロールパネルのコンテンツ項目を削除し、その後Sitecoreコマースコントロールパネルからコマースエンジンのコンテンツテーブルにコンテンツ項目を再コピーします。同期すべきコンテンツ項目の数は、この操作が完了するまでの時間を決定します。

すべてのコンテンツ項目を同期させるには:

1.  Postman**コレクション** のペインで*ContentAPISamples*コレクションを展開します。
    
2.  *Views*フォルダを開き、Sync itemリクエストをクリックします。
    
3.  **ボディ**パネルで、"viewName"と"forAction" パラメータの値をSynchronizeContentPathに設定し、**Send**をクリックします。
    
    > !注Sync itemリクエストはエンティティビューの情報を返します。内容項目 "Version" 値に注意してください。 Sync content pathリクエストの入力としてこの情報を提供する必要があります。
    > 
    > ![The version value property.](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/101/sitecore-experience-commerce/images/SyncContentPath_Version_value.png)
    
4.  *DoActions*フォルダを開き、Sync content pathリクエストをクリックします。
    
5.  **Body**パネルで、[ステップ3](https://doc.sitecore.com/xp/ja/developers/101/sitecore-experience-commerce/synchronize-content-items.html#UUID-38bd7b87-c2be-c349-415d-01f328207c9d_N1569437638159 "Step 3")で実行されたSync itemリクエストへの応答で返された値と同じ値でバージョン"Value"プロパティを更新します
    
    以下は、Sync content path requestで更新しなければならない"Version"プロパティの例を示しています:
    
    ![The "Version" property in the Sync content path request.](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/101/sitecore-experience-commerce/images/SyncItemPath.png)
    
6.  **Send**をクリックします。
    
7.  コンテンツアイテムをBusiness Toolsで利用可能にするには、Redisのキャッシュをフラッシュする必要があります(Redisの[flushall](https://redis.io/commands/flushall)コマンドを使います)。