1. 構成

Commerce Engineポリシー

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

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

ポリシーを使用して、Commerce Engineの設定を定義します。ポリシーは、Commerce Engine内の特定の機能の動作を制御する設定のグループです。

各Commerceプラグインは、プラグインによって提供される機能の動作を定義する一連のポリシーを提供します。たとえば、Searchプラグインは、Searchインデックスに追加するエンティティのタイプ (SearchScopeポリシー) と、特定のエンティティに対してインデックスを作成するビュー フィールド (Indexableポリシー) を制御するポリシーを提供します。Commerce Coreプラグインは、コマース エンティティのキャッシュ動作を決定するEntityCachingポリシーを提供します。

Commerce Engineポリシーのリストと各ポリシーで使用できるパラメータについては、このトピックの最後にある 「Commerce Engineポリシーのリスト 」セクションを参照してください。

次に、エンティティキャッシングポリシーの例を示します。

{ 
  "$type": "Sitecore.Commerce.Core.EntityCachingPolicy, Sitecore.Commerce.Core", 
  "EntityFullName": "Sitecore.Commerce.Plugin.Content.ContentPath", 
  "AllowCaching": true, 
  "Priority": "Normal", 
  "Expiration": 86400000, 
  "HasNegativeCaching": true, 
  "CacheName": "ContentPaths", 
  "EntityIdPrefix": "Entity-ContentPath" 
} 

すべてのポリシーにはデフォルト設定があり、明示的に設定されていない限り、Commerce Engineはポリシーのデフォルト設定を使用して、定義する機能の動作を決定します。

ポリシーの動作を明示的に構成するには、ポリシーをポリシー・セット・ファイルに組み込むか (複数の環境でのグローバル構成の場合)、個々の環境構成 (JSON) ファイルにポリシーを組み込みます。環境設定ファイルでポリシーを指定すると、そのローカル構成がデフォルトのポリシー動作を上書きします。

An overview of how policies in plugin are exposed for configuration in policy sets and environment configuration files.

ポリシー・セット

ポリシー・セットは、特定の構成を持つポリシーのコレクションを含むファイルです。ポリシー・セットは、複数の環境で使用するポリシーをグループ化するために使用するため、各環境のJSONファイルで同じポリシー設定を繰り返す必要がなくなります。

Sitecore XCソリューションには、Commerce Engine SDK.*.zipパッケージのwwwroot\data\Environmentsフォルダーに次のデフォルトのポリシー セット ファイルが含まれています。

  • Core.ControllerMethodRoles.PolicySet-1.0.0.json

  • Plugin.AccessByRoles.PolicySet-1.0.0.json

  • Plugin.Caching.PolicySet-1.0.0.json

  • Plugin.Catalog.PolicySet-1.0.0.json

  • Plugin.CatalogIndexing.PolicySet-1.0.0.json

  • Plugin.Content.PolicySet-1.0.0.json

  • Plugin.LocalizeEntities.PolicySet-1.0.0.json

  • Plugin.Minions.PolicySet-1.0.0.json

  • Plugin.Payments.Braintree.PolicySet-1.0.0.json

  • Plugin.Plugin.PolicySet-1.0.0.json

  • Plugin.Relationships.PolicySet-1.0.0.json

  • Plugin.Search.PolicySet-1.0.0.json

  • Plugin.Search.Solr.PolicySet-1.0.0.json (Solr検索プロバイダ用)

  • Plugin.SQL.PolicySet-1.0.0.json

  • Plugin.SQL.Sharding.PolicySet-1.0.0.json

  • Plugin.Validation.PolicySet-1.0.0.json

  • Plugin.Versioning.PolicySet-1.0.0.json

  • Plugin.ViewTemplateComposer.PolicySet-1.0.0.json

  • Plugin.Workflow.PolicySet-1.0.0.json

Commerce環境が特定のポリシー・セットで定義された動作を継承するようにするには、そのポリシー・セットへの参照を環境のJSONファイルに含める必要があります。

たとえば、グローバルCachingポリシー・セットで指定されたキャッシング動作を特定の環境に適用するには、次のように、そのポリシー・セットのエントリーを環境JSONファイルのPoliciesコレクション ( Plugin.Habitat.CommerceShops.1.0.0.jsonなど) に追加します。

   {
     "$type": "Sitecore.Commerce.Core.PolicySetPolicy, Sitecore.Commerce.Core",
        "PolicySetId": "Entity-PolicySet-CachingPolicySet"
   },
メモ

ポリシー・セット・ファイル内のポリシー設定を変更すると、そのポリシー・セット・ファイルを参照するすべての環境で動作が変更されます。

ローカルポリシーの設定

1つの環境のポリシー構成を定義するには、環境の構成 (JSON) ファイルにポリシーを追加します。

たとえば、Cartsプラグインには、カートの動作を制御するポリシーが含まれています。1つのポリシーであるCalculateCartポリシーは、Commerce Engineがカートの合計を再計算するかどうか (およびいつ再計算するか) を決定します。プロモーション、ライン価格、配送料、またはその他のカート操作は、カートの合計に影響します。パフォーマンスを最適化するために、特にShops環境では、AlwaysCalculateパラメーターはデフォルトでfalseに設定されています。

ただし、オーサリング環境では、AlwaysCalculateパラメーターを有効にして、たとえばビジネスユーザーが新しいプロモーションをテストし、割引がカートの合計にリアルタイムで正しく適用されていることを確認できるようにすることができます。

オーサリング環境でのみパラメータを有効にするには、Calculate Cartポリシーのインスタンスを環境JSONファイル ( Plugin.Habitat.CommerceAuthoring.jsonなど) のPoliciesコレクションに追加し、次のようにAlwaysCalculate Calculate Cartパラメータをtrueに設定します。

  {
    "$type": "Sitecore.Commerce.Plugin.Carts.CalculateCartPolicy, Sitecore.Commerce.Plugin.Carts",
        "AlwaysCalculate": true
  },

Calculate Cartポリシーは環境のJSONファイルに明示的に含まれているため、Commerce Engineはファイル内の設定を使用して、その特定の環境に対するCalculate Cartポリシーのデフォルト動作を上書きします。

手記

環境JSONファイルに変更を加えた場合は、Commerce Engineをブートストラップ して、変更をグローバル データベースに反映する必要があります。

Commerce Engineポリシーのリスト

さまざまなCommerce Engineサービスのポリシーは、それらのマイクロサービスを提供するプラグインで定義されます。次の表は、マイクロサービスで使用できるすべてのポリシーをまとめたものです。ポリシー列のリンクをクリックすると、これらの特定のポリシーに関する詳細なトピックに移動します。

コマースプラグイン

Sitecore.Commerce.コア

Core policies

Sitecore.Commerce.Plugin.ビュー

Views policies

Sitecore.Commerce.Plugin.注文

注文ポリシー

遅延可用性ポリシー

Sitecore.Commerce.Plugin.戻り値

Returns policies

Sitecore.Commerce.Plugin.カート

Cart policies

Sitecore.Commerce.Plugin.Customers (英語)

Customer policies

Sitecore.Commerce.Plugin.価格設定

Pricing policies

Sitecore.Commerce.Plugin.プロモーション

Promotions policies

Sitecore.Commerce.Plugin.クーポン

Coupons policies

Sitecore.Commerce.Plugin.エンタイトルメント

Entitlements policies

Sitecore.Commerce.Plugin.カタログ

カタログとリレーションシップのポリシー

Sitecore.Commerce.Plugin.可用性

Availability policies

Sitecore.Commerce.Plugin.インベントリ

Sitecore.Commerce.Plugin.プレオーダー可能

Sitecore.Commerce.Plugin.バックオーダー可能

Inventory policies

Sitecore.Commerce.Plugin.Payments (英語)

Payment policies

Sitecore.Commerce.Plugin.フルフィルメント

Fulfillment policies

Sitecore.Commerce.Plugin.Search (英語)

Search policies

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